在尝试将用户的输入保存到文件而不覆盖以前的输入时,我发现每次保存新条目并退出程序后,下次运行程序并查看文本文件时,以前的数据到最后一个条目已经重复,或者我应该说再次保存在最后一个文件保存之上。任何人都可以看到为什么程序不保存最后一个文件,然后只是将自己添加到以前的文件?我很感激任何帮助,它可能非常简单,但无法看到问题是我自己,谢谢。
以下是我必须保存输入的代码
try {
FileWriter fw = new FileWriter("EventsList.txt", true);
PrintWriter pw = new PrintWriter(fw);
for (Events e : event) {
pw.println(Integer.toString(e.getRefNo()));
pw.println(e.getDate());
pw.println(e.getArtist());
pw.println(e.getVenue());
pw.println(e.getCity());
pw.println(Double.toString(e.getTicketCost()));
pw.println(Integer.toString(e.getQuantity()));
}
pw.close(); // close output stream
} catch (FileNotFoundException e) {
e.printStackTrace();
System.out.println("Error!");
}
break;
答案 0 :(得分:1)
将true作为PrintWriter的第二个参数传递给"追加"模式。
PrintWriter pw = new PrintWriter(fw, true);