Код перезаписывает файл, потому что вы не указали OpenOption
при вызове newBufferedWriter()
.
как javadoc говорит:
Если параметры отсутствуют, этот метод работает так, как если бы параметры CREATE
, TRUNCATE_EXISTING
и WRITE
присутствовали. Другими словами, он открывает файл для записи, создает файл, если он не существует, или сначала усекает существующий regular-file
до размера 0
, если он существует.
Попробуйте:
Files.newBufferedWriter(outFilePath, StandardOpenOption.CREATE,
StandardOpenOption.APPEND,
StandardOpenOption.WRITE)
Или, если файл уже существует, произойдет сбой, если его нет:
Files.newBufferedWriter(outFilePath, StandardOpenOption.APPEND,
StandardOpenOption.WRITE)
Чтобы записать новый файл,сбой, если он уже существует
Files.newBufferedWriter(outFilePath, StandardOpenOption.CREATE_NEW,
StandardOpenOption.WRITE)