gpt4 book ai didi

java - 当我们第二次写入文件时,用新内容替换文本文件的旧内容

转载 作者:行者123 更新时间:2023-12-01 08:10:45 25 4
gpt4 key购买 nike

嗨,我正在通过java代码将一些数据写入文本文件,但是当我再次运行代码时,它再次附加到旧数据,我希望新数据覆盖旧版本。谁能帮忙..

BufferedWriter  out1 = new BufferedWriter(new FileWriter("inValues.txt" , true));
for(String key: inout.keySet())
{
String val = inout.get(key);
out1.write(key+" , "+val+"\n");
}
out1.close();

最佳答案

代码会有所帮助,但您可能会告诉它附加数据,因为默认情况下是覆盖。找到类似的东西:

file = new FileWriter("outfile.txt", true); 

并将其更改为

file = new FileWriter("outfile.txt", false); 

或者只是

file = new FileWriter("outfile.txt");

由于默认是覆盖,所以两者都应该有效。

根据您的编辑,只需在 FileWriter 中将 true 更改为 false,或将其删除。第二个参数不是必需的,当 true 时指定您要将数据附加到文件。

您提到了不完整写入的问题... BufferedWriter() 不是必需的,如果您的文件很小,那么您可以单独使用 FileWriter() 并避免任何此类问题。如果您确实使用 BufferedWriter(),则需要在 .close() 之前对其进行 .flush() 操作。

BufferedWriter out1 = new BufferedWriter(new FileWriter("inValues.txt"));
for(String key: inout.keySet())
{
String val = inout.get(key);
out1.write(key+" , "+val+"\n");
}
out1.flush();
out1.close();

关于java - 当我们第二次写入文件时,用新内容替换文本文件的旧内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17609150/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com