java将txt写入文件而不附加
好的,我实现了一个系统,我保存了一个.txt
文件中的计数
计数是一个整数
我唯一的问题是,不是取代之前的计数;e、 g
"78" -> "79"
它将新计数添加到上一个计数中;e、 g
"78" -> "7879"
我的代码是:
private static void saveCount(int inCount) throws FileNotFoundException, IOException {
BufferedReader fbr = new BufferedReader(new FileReader("count.txt"));
try (FileWriter fw = new FileWriter("count.txt", (fbr.readLine() != null))) {
String count = Integer.toString(inCount);
fw.write(count);
}
}
# 1 楼答案
您正在启用附加功能。将
(fbr.readLine()!=null)
替换为false
以禁用追加,如下所示:# 2 楼答案
FileWriter
构造函数的第二个参数是布尔标志append
。将其设置为false以覆盖文件而不是追加# 3 楼答案
您使用的FileReader的构造函数有一个参数append(布尔值)。如果它是真的,您将附加文件的内容(并拥有7879)。如果为false,则文件内容将被覆盖
看起来像fbr。readLine()不为null,因此每次都会追加内容
# 4 楼答案
使用BufferedWriter而不是BufferedReader,完成后将其关闭