我正在制作一个简单的程序,使用FileWriter
将数据放入文件中。
但是我遇到了一个问题。我的代码是创建fie但不将数据放入文件中。
import java.io.*;
class Temp
{
public static void main(String args[])throws Exception
{
FileWriter fw=new FileWriter("ma.txt");
BufferedWriter bw=new BufferedWriter(fw);
String str="dslkm dsk";
bw.write(str);
}
}
任何人都可以告诉我为什么会这样吗?
答案 0 :(得分:2)
您需要刷新并关闭作者。
bw.flush();
bw.close();
即使只关闭作者也应该足够,因为它会在关闭之前自动刷新。
答案 1 :(得分:0)
您的代码应为:
public static void main(String args[])throws Exception
{
FileWriter fw=new FileWriter("ma.txt");
BufferedWriter bw=new BufferedWriter(fw);
String str="dslkm dsk";
bw.write(str);
bw.flush();
bw.close();
}
答案 2 :(得分:0)
始终需要关闭或刷新文件编写器。否则,无法保证将bytes
/ characters
写入您的文件中。并且最好将fileWriter
与try-catch-finally
块一起使用 -
try {
FileWriter fw=new FileWriter("ma.txt");
BufferedWriter bw=new BufferedWriter(fw);
String str="dslkm dsk";
bw.write(str);
} catch (IOException ex){
System.err.println("Couldn't log this: "+s);
}finally{
bw.close();
}