我需要将unicode文字字符串打印为等效的unicode字符。
System.out.println("\u00A5"); // prints ¥
System.out.println("\\u"+"00A5"); //prints \u0045 I need to print it as ¥
如何将此字符串计算为unicode字符?
答案 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个“字符”。