Печать кодированных символов Юникода - PullRequest
1 голос
/ 07 декабря 2011

Допустим, у нас есть строка типа P\u0159\u00edprava
Как мы можем распечатать ее с помощью Java (println, printf, ...), чтобы символы Unicode не декодировались?

Финал

В итоге я использовал что-то вроде этого

String data = "P\u0159\u00edprava";
data = data.replace("\\","\\\\");
// "\\" is a single backslash "\\\\" then double backslashes
System.out.println(data);

Ответы [ 3 ]

4 голосов
/ 07 декабря 2011

Избежать обратной косой черты:

System.out.println("P\\u0159\\u00edprava");
4 голосов
/ 07 декабря 2011

Добавление '\' перед вашими собственными '\' символами должно помочь:

System.out.println("P\\u0159\\u00edprava");
2 голосов
/ 07 декабря 2011

Использование StringEscapeUtils из commons-lang3 .

Код здесь (см. Метод public boolean translate(int codepoint, Writer out) throws IOException): http://svn.apache.org/viewvc/commons/proper/lang/trunk/src/main/java/org/apache/commons/lang3/text/translate/UnicodeEscaper.java?revision=1148520&view=markup

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...