Java Scanner - читать разрывы строк в строке?

У меня есть сканер, который принимает пользовательский ввод до Ctrl + d, а затем цикл while, который добавляет каждое слово в строку, а затем печатает ее, но я хотел бы знать, как также включить в строку новые индикаторы строки, такие как \n везде, где есть новая линия.

Scanner sc = new Scanner(System.in);
System.out.println("Enter your string: ");
String x = "";

while (sc.hasNext()){
  x+=sc.next() +" ";
}
System.out.println(x);

Например, этот код будет принимать ввод:

Hello
Hello
Hello

и напечатайте: Привет Привет Привет

Принимая во внимание, что я хотел бы напечатать что-то вроде:

Hello\n Hello\n Hello\n

чтобы я мог видеть, где заканчивается каждая строка.


person yhsdygdyusgdysgdsudsd    schedule 26.02.2015    source источник
comment
Вы хотите прочитать весь ввод как одну строку? Затем распечатайте его таким образом, чтобы новые строки отображались как "\n"?   -  person Bohemian♦    schedule 27.02.2015


Ответы (1)


Вы хотите напечатать «\n», так почему бы вам не напечатать его?

while (sc.hasNextLine()){
  x+=sc.nextLine() +"\n";
}
person NeplatnyUdaj    schedule 26.02.2015
comment
Я бы хотел, чтобы цикл добавлял индикатор новой строки везде, где есть новая строка, делая это, просто печатая \n после каждого слова. - person yhsdygdyusgdysgdsudsd; 27.02.2015
comment
поэтому используйте Scanner.nextLine и Scanner.hasNextLine - person NeplatnyUdaj; 27.02.2015