У меня есть программа, которая много обрабатывает с помощью циклов и записывает строки в файл во многих разных точках. Я не уверен насчет общего дизайна, как лучше всего это сделать. Мне не нужно будет читать файл в любой момент во время работы, хотя я захочу просмотреть его позже.
Во-первых, является ли BufferedWriter с FileWriter разумным способом сделать это?
Во-вторых, по-видимому, я не хочу открывать и закрывать это каждый раз, когда я хочу что-то написать (несколько раз в секунду).
Но если я использую try с ресурсами, то мне пришлось бы поместить в эту попытку практически всю программу, это нормально?
На данный момент скелет выглядит так:
try (FileWriter writer = new FileWriter("filename.txt");
BufferedWriter bw = new BufferedWriter(writer)) {
} catch (IOException e) {
//catch IO error
}
for (//main loop){
bw.write(string);
for (//several sub loops){
bw.write(//more strings);
}
for (//several sub loops){
bw.write(//more strings);
}
}
bw.write(//final string);
try {
bw.close();
} catch (IOException ex) {
//catch IO error
}
Это выглядит разумно или есть лучший способ? Заранее большое спасибо за помощь.
Редактировать - спасибо всем за помощь, полностью ответил на мои вопросы.