我在尝试将excel文件转换为数组列表或仅包含存储在不同单元中的信息的数组时遇到了一些麻烦。 信息存储在excel中,如下例所示:将Java CSV数据存入数组
业主信息;车主;汽车的卖家;
日期;汽车品牌 ;门的数量;汽车车牌;汽车颜色; 价格
2.3.2013;菲亚特4; 23-21-AA;黑色 ; 10.000
2.1.2014;雷诺; 4; 23-12-BA;蓝色 ; 25.000
我将需要访问的信息,如getBrand(),getLicense等,所以我想保存这些不同的信息进入的ArrayList,OwnerInfo [所有者[],则卖方[] 后来我想总结汽车价格或别的东西,因此我想访问CarInfo [6]并将它们总和。
我有点失落,需要一些建议或提示。
public static void main(String args[]) {
try {
FileInputStream fstream = new FileInputStream(
"file.csv");
DataInputStream in = new DataInputStream(fstream);
BufferedReader br = new BufferedReader(new InputStreamReader(in));
String strLine;
while ((strLine = br.readLine()) != null) {
String[] tokens = strLine.split(";");
for (int i = 0; i < tokens.length; i++) {
System.out.println(tokens[i]);
}
}
in.close();
} catch (Exception e) {
System.err.println("Error: " + e.getMessage());
}
}
}
另一个问题是,当我使用
for (int i = 0; i < tokens.length; i++) {
System.out.println(tokens[0]);
}
它将打印的Excel(.CSV)的第一列中,但是如果我打印令牌[1]也不会打印任何东西。为什么?
此外,如果我在.txt文件上做同样的事情,它将打印第二个“列”。
我看到的是你正在分裂一个**; **而你使用的是csv,这意味着你的分隔符是一个逗号**,* – AdityaKeyal
当我使用“;”时,它似乎只是“工作”作为分隔符 – JDev
您可以尝试将excel另存为csv,然后使用open with选项打开记事本中的csv文件。然后将信息添加到您的帖子,这将有所帮助。 – AdityaKeyal