一尘不染

如何在Java中打印转义字符?

java

当我有一个字符串,如:

String x = "hello\nworld";

使用时,如何让Java打印实际的转义字符(而不将其解释为转义字符)System.out

例如,打电话时

System.out.print(x);

我想看看:

hello\nworld

并不是:

hello
world

我希望看到用于调试目的的实际转义符。


阅读 348

收藏
2020-09-08

共1个答案

一尘不染

一种方法是:

public static String unEscapeString(String s){
    StringBuilder sb = new StringBuilder();
    for (int i=0; i<s.length(); i++)
        switch (s.charAt(i)){
            case '\n': sb.append("\\n"); break;
            case '\t': sb.append("\\t"); break;
            // ... rest of escape characters
            default: sb.append(s.charAt(i));
        }
    return sb.toString();
}

然后你跑了System.out.print(unEscapeString(x))

2020-09-08