我在Java中有一个字符串,包含特殊字符,如\n和\t,它们被解释为控制字符,并在显示时产生新的行和制表符。我想将这些特殊字符显示为纯文本,例如,将“\n”显示为\n而不是作为新的一行。字符串还可以包含单引号或双引号(')(“)为了简洁,它可以包含任何可能的字符。
String text = "Hello\nWorld!";
text = text.replace("\\", "\\\\");
text = text.replace("\n", "\\n");
System.out.println(text);
在Java中有没有办法做到这一点?
2条答案
按热度按时间velaa5lx1#
Apache Commons有一个库,可以满足您似乎正在寻找的内容:https://commons.apache.org/proper/commons-text/javadocs/api-release/org/apache/commons/text/StringEscapeUtils.html#escapeJava(java.lang.String)
如果你不能使用Maven/Gradle,那么你很可能不得不通过用反斜杠转义所有特殊字符来滚动自己的字符,例如:
xmd2e60i2#
这里有一种使用流的方法。
印刷品