Я заметил, как Scanner игнорирует символы перевода строки, такие как \n для новой строки или \" для двойных кавычек в строке, это казалось необходимым для работы, поэтому мне интересно, есть ли что-то, что я делаю неправильно, или Scanner действительно игнорирует перевод строки?
Вот пример кода, где закомментированный String text = "This \n Must \n Work!!"
работает с переводом строки и выводит
Это
должно
работать!!
Но если бы мы использовали String text = sc.nextLine();
и
тип "Это \n не будет \n работать", это не создало бы новую строку, а просто вывело бы
Это \n не работает\n
в test.txt
Пример кода:
import java.io.FileNotFoundException;
import java.io.PrintWriter;
import java.util.Scanner;
public class StoringTheString {
public static void main(String[] args) {
try {
Scanner sc = new Scanner(System.in);
System.out.println("Type anything: ");
String text = sc.nextLine();
// String text = "This \n Must \n Work!!!" ;
sc.close();
PrintWriter out = new PrintWriter("test.txt");
out.println(text);
out.close();
}catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
Извините, если я не совсем ясно выразился в своем сообщении, пожалуйста, прокомментируйте, если есть какие-то недоразумения, и я постараюсь уточнить.
Спасибо за ваше время ^...^