繁体   English   中英

如何在 Java 中将 UTF-16 代理十进制转换为 UNICODE

[英]How to Convert UTF-16 Surrogate Decimal to UNICODE in Java

我有一些字符串数据,如

&#55357 ;&#56842 ;

这些是十进制格式的 UTF 16 代理对。

如何在 Java 中将它们转换为 Unicode 代码点,以便我的客户可以在没有代理对的情况下理解 Unicode 十进制 html 实体?

示例: &#128522 ; - 获取上述字符串的响应

假设您已经解析了字符串以获取 2 个数字,只需从这两个char值创建一个字符串:

String s = new String(new char[] { 55357, 56842 });
System.out.println(s);

输出

😊

要获得它的代码点:

s.codePointAt(0) // returns 128522

不过,您不必创建字符串:

Character.toCodePoint((char) 55357, (char) 56842) // returns 128522

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM