вот пример кода из приложения, над которым я работаю:
BufferedWriter bw=new BufferedWriter(new FileWriter(new File("abc.txt")));
StringBuilder sb = null;
ResultSet rs = pstmt.execute();
while(rs.next()){
sb = new StringBuilder();
createLine(rs,sb);
bw.write(sb.toString());
}
bw.flush();
bw.close();
private void createLine(ResultSet rs, StringBuilder sb){
//based on conditions append the columns to string builder
sb.append(rs.getString("prodname"));
// and goes on...
}
Теперь, когда я запускаю эту программу, я заметил, что было сгенерировано только 8 КБ файла, и программа зависает, как будто она ждет, пока что-то будет очищено. Я точно знаю, что при том количестве данных, которые извлекаются из базы данных, должен быть сгенерирован файл размером не менее 40-50 КБ. Решит ли проблему размещение оператора flush внутри цикла for?