我正在做一个学校项目来构建一个伪终端和文件系统。终端正在扫描 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);
我希望 java 将我输入到控制台的 \r\n 视为行分隔符,而不是实际的 \ 和 r。它现在所做的是按原样打印输入。
期望的输出:
美国广播公司
美国广播公司
美国广播公司
更新:我试过input = StringEscapeUtils.unescapeJava(input);
了,它解决了这个问题。