我正在使用Java。使用BufferedWriter将数据从不同类写入文本文件
我创建了一个文本文件。在该文本文件中,我希望将一个值存储在class1的文本文件中。然后我想要在第二行的class2中存储更多的值到文本文件中。然后,我要存储一个更大的价值在文本文件中的第3行3类等文本文件,检索时,应该是这样的:
77
65
34
我遇到的问题是,文本当我转到下一个课程时,文件内容会被删除。例如,文本文件只会显示最后一个数据值。并删除以前的那些(在上面的例子中,只有34个会出现在第一行,当它应该在第三行)。
从Class1的一些代码:
BufferedWriter outputFile0=null;
try {
int x = value_MAP();
FileWriter fwriter0 =new FileWriter("MAP_allData.txt");
outputFile0 = new BufferedWriter(fwriter0);
outputFile0.write(""+x);
outputFile0.newLine();
} catch(Exception y) {y.printStackTrace();}
相同的代码再次出现在Class2中,CLASS3等:
BufferedWriter outputFile0=null;
try {
int x = value_MAP();
FileWriter fwriter0 =new FileWriter("MAP_allData.txt");
outputFile0 = new BufferedWriter(fwriter0);
outputFile0.write(""+x);
outputFile0.newLine();
} catch(Exception y) {y.printStackTrace();}
那么,有没有办法告诉Java中不担心擦除数据,从1级到x级时,只需一行接一行地添加数据。
谢谢。有用!但是,每次我编译/执行程序时,我都希望MAP_allData.text全新开始。 – razshan 2010-10-25 15:16:20
我试着做outputFile0.flush();就在一切之前,因此它会擦除内容以获得新的值集合。但之前执行的值仍然存在。 – razshan 2010-10-25 15:18:01
@Faraz Khan - 解决你的问题 - 第一次打开文件进行写入时,使用普通构造函数'FileWriter fwriter0 = new FileWriter(“MAP_allData.txt”);'后来当其他类写入同一个文件时,使用带有布尔参数'FileWriter fwriter0 = new FileWriter(“MAP_allData.txt”,true)的构造函数;' – 2010-10-25 15:30:38