java - Java中仅获取CSV的前两个位置

标签 java csv

我有一个包含德国汽车牌照的 csv 文件。结构如下: B、德国柏林 第一个B是城市的第一个大写字母,第二位是City,第三位是state

我只想要前两个位置,只有B和柏林

我知道如何用 Java 读取 CSV 文件,但我不知道如何告诉编译器“忽略”第三个位置?

public void read(){
    InputStream inputStream = getResources().openRawResource(R.raw.carplates);

    BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
    try {
        String csvLine;
        while ((csvLine = reader.readLine()) != null) {
            String[] row = csvLine.split(",");
            for(int i=0; i<row.length;i++){
                Log.d("ROWS", row[i]);
            }
 }

输出是一个包含 B、Berlin 和 German 的数组。由于有 400 个板,因此无法手动删除 csv 文件中的状态。 这里有什么技巧呢?

提前谢谢

[清除]

所有元素都在同一行:B,Berlin,Germany,M,Munich,Germany...

最佳答案

跳过打印最后一行:

for(int i=0; i<row.length - 1; i++){
    Log.d("ROWS", row[i]);
}

如果您确定每行恰好包含 3 个值,请执行此操作。理想情况下,这些东西应该是可配置的。一般来说,您不想只记录这些内容,因此请考虑将数据映射到某些 License.class 并使用 license.getLetter()、license.getCity() 或其他内容

关于java - Java中仅获取CSV的前两个位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54036789/

相关文章:

java - onActivityResult 的行为不符合预期

java - 在java中旋转字符串中的单词

java - 使用键盘快捷键重新排列 IntelliJ 中的方法参数

java - 如何有效地扩展 JFrame 的内容 Java?

r - fread 和带引号的多行列值

csv - 如何解析格式奇怪的数据文件?

java - IntelliJ 中的 JDBC mysql 驱动配置

javascript - d3.js - 按两个系列之一的值对两个系列进行排序

C# 从 CSV 文件中读取字符串并绘制折线图

arrays - 将带有文本字段的 CSV 扫描到 Swift 数组中