Sobes.tech
Junior — Middle

Überschreibt die Verwendung von FileOutputStream die vorhandenen Daten in der Datei beim Schreiben?

sobes.tech KI

Antwort von AI

Да, при использовании конструктора FileOutputStream без дополнительных параметров файл открывается для записи с перезаписью, то есть существующие данные в файле будут заменены новыми.

Пример:

try (FileOutputStream fos = new FileOutputStream("file.txt")) {
    String data = "Новые данные";
    fos.write(data.getBytes());
}

Если нужно дописывать данные в конец файла, следует использовать конструктор с параметром append:

FileOutputStream fos = new FileOutputStream("file.txt", true); // true — для добавления

Таким образом, по умолчанию происходит замена содержимого файла.