我有以下代码:
CSVmaker(LinkedList data) {
String [] myLines = makeStrings(data);
// for (int k = 0; k<myLines.length; k++)
// System.out.println(myLines[]);
this.file = new File("rawdata.csv");
try {
BufferedWriter buff = new BufferedWriter(new FileWriter(file));
for (int i = 0; i<myLines.length; i++){
buff.write(myLines[i]);
buff.newLine();
System.out.println("done");
}
} catch (IOException ex) {
System.out.println("except");
}
}
不,我检查了myLines的内容,这些是正确的。
另外,我得到的印刷品会尽可能频繁地打印“完成”。
csv已创建。
但是,如果我手动打开它,它是空的。
这可能是什么原因?
最佳答案
您从不刷新缓冲区或关闭BufferedWriter。
在for循环之后,进行以下调用:
buff.flush();
buff.close();
即使有其他资源,在完成后关闭它们也是一个好主意。