gpt4 book ai didi

java - 将 Unicode 字符 'POPCORN' 转义为 HTML 实体

转载 作者:行者123 更新时间:2023-11-30 06:01:28 27 4
gpt4 key购买 nike

我有一个带有表情符号的字符串

I love 🍿

我需要用它的 html 实体转义那个爆米花表情符号,所以我得到了

I love 🍿

我正在用 Java 编写我的代码,我一直在尝试不同的 StringEscapeUtils 库,但还没有让它工作。请帮我弄清楚我可以用什么来转义爆米花等特殊字符。

供引用:

Unicode Character Information

Unicode 8.0 (June 2015)

最佳答案

这有点老套,因为我不相信有现成的库可以做到这一点;假设您不能简单地在您的 HTML 页面上使用 UTF-8(或 UTF-16)(它应该能够按原样呈现 🍿),您可以使用 Character.codePointAt(CharSequence, int)Character.offsetByCodePoints(CharSequence, int, int) 1 如果给定字符超出正常的 ASCII 范围则执行转换。类似的东西,

String str = "I love 🍿";
StringBuilder sb = new StringBuilder();
for (int i = 0; i < str.length(); i++) {
char ch = str.charAt(i);
if (ch > 127) {
sb.append(String.format("&#x%x;", Character.codePointAt(str, i)));
i += Character.offsetByCodePoints(str, i, 1) - 1;
} else {
sb.append(ch);
}
}
System.out.println(sb);

哪些输出(按要求)

I love &#x1f37f;

1根据helpful comments编辑来自安德烈亚斯。

关于java - 将 Unicode 字符 'POPCORN' 转义为 HTML 实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57532687/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com