转义的html不会转义(现在:未转义的html不会逃脱)

lor*_*tol 15 html java character-encoding apache-commons

所以我目前正在使用commons lang apache库.

当我尝试取消该字符串时:😀 返回相同的字符串:😀

String characters = "😀"
StringEscapeUtils.unescapeHtml(characters);
Run Code Online (Sandbox Code Playgroud)

输出: 😀

但是当我尝试使用少数几个字符来转义字符串时,它可以工作:

String characters = "㈳"
StringEscapeUtils.unescapeHtml(characters);
Run Code Online (Sandbox Code Playgroud)

输出:㈳

有任何想法吗?当我尝试"😀"在线unescaping实用程序上取消此String 时,它可以工作,所以也许这是apache常见langs库中的一个错误?或者任何人都可以推荐其他图书

谢谢.

更新:

我现在能够成功地解除String的问题.现在的问题是当我试图逃脱那个unescape的结果时,它不会带回String(?).

Man*_*ngh 3

这是一个 unicode 字符,其索引为U+1F600 (128512)- GRINNING FACE

详情请参阅网址

您提到的字符串是 U+1F600 的 HTML 转义,如果您使用 Apache commons lang 对其进行转义,它将为您绘制所需的笑脸,如屏幕截图中提供的那样

从 U+0000 到 U+FFFF 的字符集有时称为基本多语言平面 (BMP)。代码点大于 U+FFFF 的字符称为增补字符。Java 平台在 char 数组以及 String 和 StringBuffer 类中使用 UTF-16 表示形式。在此表示中,增补字符表示为一对 char 值,第一个来自高代理项范围 (\uD800-\uDBFF),第二个来自低代理项范围 (\uDC00-\uDFFF)。

关于您的更新,它没有转换回