我有一个2d int数组。我希望它写在CSV文件中。我使用了以下代码
BufferedWriter writer = new BufferedWriter(new FileWriter("filecsv.csv"));
for(int index11 = 0; index11 < a.length; index11++) {
for(int subIndex1 = 0; subIndex1 < 2; subIndex1++) {
writer.write(a[index11][subIndex1]);
System.out.print(",");
}
System.out.println();
}
我的输出应该像
1,2
3,4
5,6
但我的CSV文件中没有写入任何内容,也没有在控制台窗口中写入任何内容。有人能告诉我我做错了吗?
答案 0 :(得分:1)
三个问题:
System.out
)。writer.close()
,否则这些字符就会停留在缓冲区而根本不会被写入。答案 1 :(得分:0)
try{
BufferedWriter writer = new BufferedWriter(new FileWriter("filecsv.csv"));
for(int index11 = 0; index11 < a.length; index11++) {
for(int subIndex1 = 0; subIndex1 < 2; subIndex1++){
writer.write(String.valueOf(a[index11][subIndex1]));
if(subIndex1<2-1){
writer.write(",");
}
}
writer.write("\n");
}
}
catch(IOException ex){
ex.printStackTrace();
}
writer.close();
答案 2 :(得分:0)
您只是根据代码 System.out.print(“,”); 将“,”数组打印到控制台。另外,我怀疑你应该做一个同花顺,在你写完内容之后,你应该关闭作者和文件。虽然我之前没有尝试编写csv文件,但这些是写入文件并保存文件的常用步骤。