Java中怎么把文本追加到已经存在的文件
我需要重复把文本追加到现有文件中。我应该怎么办?
回答一
你是想实现日志的目的吗?如果是的话,这里有几个库可供选择,最热门的两个就是Log4j 和 Logback了
Java 7+
对于一次性的任务,用FIles类实现很简单
try {
Files.write(Paths.get("myfile.txt"), "the text".getBytes(), StandardOpenOption.APPEND);
}catch (IOException e) {
//exception handling left as an exercise for the reader
}
注意:上面的代码如果文件不存在,会抛出NoSuchFileException。它也不会自动追加到新一行(像你追加文件的时候经常干的那样)。另一个方法就是传入 CREATE和 APPEND两个参数,如果文件不存在的话就会先创建了。
private void write(final String s) throws IOException {
Files.writeString(
Path.of(System.getProperty("java.io.tmpdir"), "filename.txt"),
s + System.lineSeparator(),
CREATE, APPEND
);
}
然鹅,如果你想写一个相同的文件多次,上