使用Files.write()时默认情况下会将内容写入文件并覆盖文件的现有内容。
如果想要在写入时追加内容而不覆盖的话你需要定义追加项
StandardOpenOption[] options = {StandardOpenOption.CREATE, StandardOpenOption.APPEND};
其中包含两个 StandardOpenOption
枚举值:StandardOpenOption.CREATE
和 StandardOpenOption.APPEND
。
StandardOpenOption.CREATE
: 这个选项表示如果文件不存在,将会创建一个新文件。如果文件已经存在,它不会覆盖现有文件,而是继续在文件中写入内容。
StandardOpenOption.APPEND
: 这个选项表示在写入文件时追加内容而不覆盖。它告诉文件系统将新数据添加到文件的末尾,而不是从文件的开头开始写入。
Path path = Paths.get("your_file.txt");
String content = "字符串内容";
try {
Files.write(path, content.getBytes(StandardCharsets.UTF_8), options);
} catch (IOException e) {
// 处理异常
e.printStackTrace();
}
这时再执行Java 在写入文件时追加内容而不是覆盖原有内容。每次写入的内容都会被添加到文件的末尾,而不会覆盖之前的内容。