我有一个Unicode十六进制值的字符串表示形式列表,例如“0x20000”(𠀀)和“0x00F8”(ø),我需要获取它们的整数代码点,以便可以使用以下功能:
char [] chars = Character.toChars(0x20000);

这应该涵盖BMP以及补充字符。我找不到任何方法,因此会很高兴得到一些帮助。

最佳答案

您可以创建自己的NumberFormat实现,但是比执行以下操作更容易:

String hexString = "0x20000";
int hexInt = Integer.parseInt(hexString.substring(2), 16);
String stringRepresentation = new String(Character.toChars(hexInt));
System.out.println(stringRepresentation);   //prints "𠀀"

10-04 17:36