如何在Java中向现有文件添加文本而不覆盖其内容?
大家好!我是一名Java初学者,在处理文件时遇到了问题。我需要在应用程序中实现日志记录功能:每个事件都应追加到日志文件的末尾,而不是覆盖它。
问题在于,我使用了FileWriter,但它每次都会创建一个新文件,从而删除之前的记录。以下是我当前的代码:
```java
import java.io.FileWriter;
import java.io.IOException;
public class Logger {
public static void main(String[] args) {
try {
FileWriter writer = new FileWriter("log.txt");
writer.write("第一条记录\n");
writer.write("第二条记录\n");
writer.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
当我多次运行这段代码时,log.txt文件只包含最新的记录,而不是所有记录。我尝试过使用FileWriter("log.txt", true)——这确实有帮助,但我不确定这是否是正确的做法。