我有这段代码:
String[] strings = {"Hi" , "You", "He", "They", "Tetrabenzene", "Caaorine", "Calorine"};
File file = new File("G:\\words.txt");
FileWriter fWriter;
BufferedWriter bWriter;
try {
if((file.exists())) {
file.createNewFile();
}
fWriter = new FileWriter(file.getAbsoluteFile(), true);
bWriter = new BufferedWriter(fWriter);
//Convert Result objects to JSON and write to file
for(int j = 0; j < strings.length; ++j) {
bWriter.write(strings[j]);
bWriter.newLine();
System.out.println("done");
}
}
catch(IOException e) {e.printStackTrace();}
在此之前我有相同的代码2或3次,而BufferedWriter
写得非常完美。但由于某种原因,当我得到这个代码时它不会写。我一直在寻找可能出错的东西,但我无法改变一些东西并快速测试,因为该程序需要10分钟来完成这一部分。
此外,该程序将“完成”打印到控制台,因此我知道它将进入for loop
。
关于我做错了什么的想法?
答案 0 :(得分:7)
如果希望将数据实际刷新到磁盘上的文件,请调用bWriter.flush()
。
或者,当您与作家合作完成后,只需致电bWriter.close()
即可。
bWriter.close()
来电将在内部拨打bWriter.flush()
。
答案 1 :(得分:0)
我假设您想添加if(!file.exists())
而不是if((file.exists()))
。