Использование для записи строк цикла один за другим в файле с использованием java
for(i=0;i<10;i++){
String output = output + "Result "+ i +" : "+ ans +"\n"; //ans from other logic
FileWriter f0 = new FileWriter("output.txt");
f0.write(output);
}
но он не работает,
пожалуйста, дайте некоторую помощь для метода append
или PrintWriter
, я понятия не имею, как использовать эти методы.
Мне нужен файл, например
Result 1 : 45 //here 45 is ans
Result 2 : 564856
Result 3 : 879
.
.
.
.
Result 10 : 564
спасибо
Ответы
Ответ 1
Ваш код создает новый файл для каждой строки. Вытяните файл открытым за пределами цикла for.
FileWriter f0 = new FileWriter("output.txt");
String newLine = System.getProperty("line.separator");
for(i=0;i<10;i++)
{
f0.write("Result "+ i +" : "+ ans + newLine);
}
f0.close();
Если вы хотите использовать PrintWriter
, попробуйте это
PrintWriter f0 = new PrintWriter(new FileWriter("output.txt"));
for(i=0;i<10;i++)
{
f0.println("Result "+ i +" : "+ ans);
}
f0.close();
Ответ 2
PrintWriter.printf представляется наиболее подходящим
PrintWriter pw = new PrintWriter(new FileWriter("output.txt"));
for (int i = 0; i < 10; i++) {
pw.printf("Result %d : %s %n", i, ans);
}
pw.close();
Ответ 3
Просто попробуйте следующее:
FileWriter f0 = new FileWriter("output.txt");
for(i=0;i<10;i++){
f0.newLine();
String output = output + "Result "+ i +" : "+ ans; //ans from other logic
f0.append(output);
}