8

我想在 Java 中使用 SMP(补充多语言平面)。实际上,我想打印一个代码点大于 0xFFFF 的字符。我使用了这行代码:

int hexCodePoint = Character.toCodePoint('\uD801', '\uDC02' );

具有特殊字符的代码点。但是如何将这个 unicode 字符打印到控制台?

预先感谢您的帮助。

4

2 回答 2

5
String s = new StringBuilder().append("Here is a codepoint: ").appendCodePoint(hexCodePoint).toString();
System.out.println(s);

请注意,在 Windows 中,由于控制台的 Unicode 功能有限,它不会产生预期的输出

编辑:或Character.toChars(hexCodePoint)生产char[]

于 2010-01-20T18:49:57.927 回答
4
System.out.println("\uD801\uDC02");

现在,U+10402 (

于 2010-01-20T19:12:10.390 回答