Подтвердить что ты не робот

Как перезаписать файл через java nio writer?

Я пытаюсь записывать файлы следующим образом:

String content = "Test File Content";
  • Я использовал как: Files.write(path, content.getBytes(), StandardOpenOption.CREATE);

Если файл не создается, создается файл и записывается содержимое. Но если файл доступен, содержимое файла Test File ContentTest File Content, и если код запускается повторно, содержимое файла Test File ContentTest File ContentTest File Content...

  • Я использовал как: Files.write(path, content.getBytes(), StandardOpenOption.CREATE_NEW);,

Если файл не создается, создается файл и исключается исключение:

java.nio.file.FileAlreadyExistsException: /Главная/gyhot/Проекты/индексации/ivt_new/цель/тест-классы/test_file   в sun.nio.fs.UnixException.translateToIOException(UnixException.java:88)   в...

Как перезаписать файл через java new I/O?

4b9b3361

Ответ 1

вы хотите вызвать метод без OpenOption

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

из javadoc

Параметр options указывает, как файл создается или открывается. Если параметры отсутствуют, этот метод работает так, как если бы CREATE, TRUNCATE_EXISTING и WRITE. Другими словами, это открывает файл для записи, создавая файл, если он не существует, или первоначально обрезая существующий обычный файл до размера 0

Ответ 2

Вы хотите совместно использовать опции StandardOpenOption.TRUNCATE_EXISTING и StandardOpenOption.CREATE:

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