私は疑似端末とファイルシステムを構築する学校のプロジェクトに取り組んでいます。端末は System.in をスキャンし、文字列をコントローラーに渡します。
コンソールへの入力:abc\r\nabc\r\nabc
これが私が試したコードです
Scanner systemIn = Scanner(System.in);
input = systemIn.nextLine();
input = input.replaceAll("\\\\r\\\\n",System.getProperty("line.separator"));
System.out.print(input);
コンソールに入力した \r\n を、実際には \ と r ではなく、行区切り記号として Java に処理してもらいたいのです。現在は、入力をそのまま出力しています。
望ましい出力:
abc
abc
abc
更新:試しinput = StringEscapeUtils.unescapeJava(input);
てみたところ、問題は解決しました。