Пустая строка перед текстом в файле
Кратко опишу как в теории должна работать программа. Пользователь может ввести неограниченное количество строк текста, но при вводе &save&, файл сохраняется и закрывается, а цикл прервается. Все работает, но в текстовом документе перед введенным текстом появляется пробел. Вот часть кода:
BufferedWriter writer = new BufferedWriter(new FileWriter("text.txt"));
while(true) {
String Writed = scanner.nextLine();
if(Writed.equals("&save&") {
writer.flush();
writer.close();
break;
}
writer.write(Writed);
writer.newLine();
}
Если ввести:
42
42
&save&
То в файле будет:
42
42
Ответы (1 шт):
Автор решения: Дмитрий
→ Ссылка
Попробуйте так:
final String fileName="text.txt", breakLine = "&save&";
try (final Scanner scanner = new Scanner(System.in)) {
final StringBuilder sb = new StringBuilder();
String inputLine;
while (!breakLine.equals(inputLine = scanner.nextLine())) sb.append(inputLine).append("\r\n");
Files.write(Paths.get(fileName), sb.toString().getBytes());
}