【发布时间】:2019-01-04 10:07:15
【问题描述】:
我有一个包含德国汽车牌照的 csv 文件。结构如下: B,柏林,德国 第一个B是城市的第一个大写字母,第二个位置是城市,第三个位置是州
我只想要前两个位置,只有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、柏林和德国的数组。由于有 400 个板块,因此无法手动删除 csv 文件中的状态。 这里的诀窍是什么?
提前谢谢你
[清除]
所有元素都在同一行:B,Berlin,Germany,M,Munich,Germany...
【问题讨论】:
-
拆分后可以自己做,只是不要看第3个索引
-
for(int i=0; i
-
不只是B,柏林,德国。有400个盘子。所以如果我只有B,柏林,德国,那么我会忽略第3个索引,但是第6个,第9个,第12个......索引呢?
-
当你拆分行时,只需读取你想要的索引。在这种情况下为 0 和 1,始终验证数组长度是否正确以防止异常
-
@AitorFDK 适用于您的 csv 文件仅包含“B, Berlin, Germany”,但不适用于 csv 文件中有 400 个元素时。