将unicode文字字符串打印为Unicode字符

时间:2014-07-02 23:06:25

标签: java unicode-string unicode-escapes unicode-literals

我需要将unicode文字字符串打印为等效的unicode字符。

System.out.println("\u00A5"); // prints  ¥

System.out.println("\\u"+"00A5"); //prints \u0045  I need to print it as ¥ 

如何将此字符串计算为unicode字符?

3 个答案:

答案 0 :(得分:5)

作为此处其他选项的替代方案,您可以使用:

int codepoint = 0x00A5; // Generate this however you want, maybe with Integer.parseInt
String s = String.valueOf(Character.toChars(codepoint));

这将优于其他提议的技术,因为它也适用于基本多语言平面之外的Unicode代码点。

答案 1 :(得分:3)

如果你有一个字符串:

System.out.println((char)(Integer.parseInt("00A5",16)));

可能有效(尚未测试过)

答案 2 :(得分:2)

将其转换为角色。

System.out.println((char) 0x00A5);

这当然不适用于非常高的代码点,可能需要2个“字符”。