如何通过Java NIO编写器覆盖文件?

11 浏览
0 Comments

如何通过Java NIO编写器覆盖文件?

我尝试使用以下代码来写文件:

String content = "测试文件内容";

如果文件不存在,我使用以下代码:

Files.write(path, content.getBytes(), StandardOpenOption.CREATE);

如果文件不存在,文件会被创建并写入内容。但是如果文件已经存在,文件的内容会变成测试文件内容测试文件内容,如果代码重复运行,文件的内容会变成测试文件内容测试文件内容测试文件内容...

我尝试使用以下代码:

Files.write(path, content.getBytes(), StandardOpenOption.CREATE_NEW);

如果文件不存在,文件会被创建,然后会抛出以下异常:

java.nio.file.FileAlreadyExistsException:

/home/gyhot/Projects/indexing/ivt_new/target/test-classes/test_file

at

sun.nio.fs.UnixException.translateToIOException(UnixException.java:88)

at

...

如何通过Java新的I/O覆盖文件?

0