我有以下课程:
public class test{
private static final File testfile = new File("filename")//imaginary file name
private static BufferedWriter writer = null;
public void test1(){
writer = new OutStreamWriter(newFileOutputStream(testfile));
writer.write("hello");
writer.close();
}
public void test2(){
writer = new OutStreamWriter(newFileOutputStream(testfile));
writer.write("hello");
writer.close();
}
}
我希望每次调用它们时都写入同一个文件,并在每个方法中创建缓冲区。但是,一旦我打电话给缓冲的编写器,它就无法再次打开。如何避免这种情况,以便我可以多次调用这两种方法?
答案 0 :(得分:0)
我相信你对这张海报有同样的问题Java - Do not overwrite with bufferedwriter
Sanjay T. Sharma说:
“FileWriter接受一个可选的boolean参数,该参数指定是否应该附加或覆盖现有内容。如果要打开文件以便以追加模式写入,则传入true。”