Как эффективно сбрасывать и записывать большие объемы данных в файл с помощью BufferedWriter в Java? [закрыто]JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Как эффективно сбрасывать и записывать большие объемы данных в файл с помощью BufferedWriter в Java? [закрыто]

Сообщение Anonymous »

Я работаю над проектом Java, в котором мне нужно записать в файл большое количество строк. Я знаю, что BufferedWriter может повысить производительность по сравнению с посимвольной записью, но я не уверен в том, как лучше очистить буфер и обеспечить правильную запись всех данных.
Вот мой текущий код:

Код: Выделить всё

import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;

public class FileWriteExample {
public static void main(String[] args) {
try (BufferedWriter writer = new BufferedWriter(new FileWriter("output.txt"))) {
for (int i = 0; i < 100000; i++) {
writer.write("Line " + i + "\n");
}
// Do I need to call writer.flush() here explicitly?
} catch (IOException e) {
e.printStackTrace();
}
}
}
Вопросы:
  • Нужно ли явно вызывать write.flush() перед закрытием BufferedWriter?
  • Существует ли разница в производительности между периодическим вызовомlush() внутри цикла и использованием try-with-resources?
  • Каковы рекомендации по эффективному написанию больших файлов на Java?


Подробнее здесь: https://stackoverflow.com/questions/798 ... ng-buffere
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»