我目前在编写代码中的文本文件时遇到问题,整个程序都被点击,所有内容都会打印到控制台。没有错误。但文件是空的。有什么建议吗?
public textFiles(String filePath)
{
File file = new File(filePath);
try{
fstream = new FileWriter(filePath,true);
}
catch (Exception e){//Catch exception if any
System.err.println("Error: " + e.getMessage());
}
out = new BufferedWriter(fstream);
System.out.println("try");
addToText("WOOOOHOOO");
System.out.println(file.exists());
}
public void addToText(String Line)
{
try {
out.write(Line);
out.newLine();
} catch (IOException e) {
System.err.println("writing Error");
}
System.out.println("SHOULDA F****** WORKED");
}
答案 0 :(得分:4)
你永远不会关闭流,因此可能永远不会刷新流 - 文本在打印出来时基本上会被缓存,然后以块的形式刷新到文件中(通常是比你的大得多的块)重写,因此缺乏产出。)
确保在完成后关闭流(fstream.close();
),它应该可以正常工作(当流关闭时,流将自动刷新以清除任何输出。)
答案 1 :(得分:-1)
尝试使用此代码在任何驱动器中编写.txt文件。
try
{
String ss="html file write in java";
File file= new File("F:\\inputfile\\aa.txt");
FileWriter fwhn= new FileWriter(file);
fwhn.write(ss);
fwhn.flush();
}
catch(Exception ex)
{
}