package com.javarush.task.task13.task1319;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.InputStreamReader;
/*
Писатель в файл с консоли
*/
public class Solution {
public static void main(String[] args) throws Exception {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String fileName = reader.readLine();
BufferedWriter writer = new BufferedWriter(new FileWriter(fileName));
StringBuilder builder = new StringBuilder();
String str = "";
while (!str.equals("exit")){
str = reader.readLine();
builder.append(str).append("\n");
}
writer.write(builder.toString());
writer.close();
}
}Павел
33 уровень
Нестандартный вопрос) Валидатор пропустил, а по факту в файл записывает в одну строку. Не могу понять почему....
Решен
Комментарии (4)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Павел
6 апреля 2021, 20:58
всем спасибо.
Ирина вы правы.
На самом деле Блокнот в одну строку показывает, Lister и WordPad все как положено). Один и тот же файл.
0
Wladyslaw Java Developer Master
6 апреля 2021, 05:01
Попробуй вместо "\n" аппендить System.lineSeparator()
0
Ирина АлымоваJava Developer в Nerdysoft
5 апреля 2021, 23:18полезный
действительно, код кажется избыточным, я решила так:
writer.write(line + "\n");
тем не менее, на первый взгляд, ваш код должен выполняться корректно, сейчас у себя проверю
UPD:
у меня ваш код записывает в файл все корректно, с переносом строки
думаю, проблема может быть в том редакторе, в котором вы открываете файл - возможно он не может правильно его раскодировать
у меня, например, после записи в файл, обычный текстовый редактор не может его открыть - открывается только через word
+1
Oleksandr
5 апреля 2021, 12:48
StringBuilder вообще не нужен в задаче.
writer.newLine() перенесет строку
+1