我从服务器获取一些 json 字符串格式的 Unicode 字符串(表情符号图标)。
我的问题很奇怪,过去两天我一直在努力解决这个问题。当我解析 json 并将所有 Unicode 字符串存储在ArrayList<String>
并尝试通过从同一个 ArrayList 获取值来设置 TextView 上的文本,然后它将 Unicode 字符显示为:
格格格格格\ud83d\ude03\ud83d\ude03fyju\ud83d\ude0c6\u20e3
当我通过传递静态值在 textview 上设置相同的字符串时:textview.settext("Ghcghchgc\ud83d\ude03\ud83d\ude03fyju\ud83d\ude0c6\u20e3")
然后文本视图显示完美的表情符号。
我被困在这一点上。任何人都可以帮我解决这个问题或者告诉我我是否做错了什么。
这听起来像是你想要的取消转义你的字符串 https://stackoverflow.com/questions/3537706/howto-unescape-a-java-string-literal-in-java你从 JSON 中得到的。如果你不介意添加一个库,Apache Commons 有一个 String.unescapeJava http://commons.apache.org/proper/commons-lang/javadocs/api-release/org/apache/commons/lang3/StringEscapeUtils.html#unescapeJava(java.lang.String)函数可以满足您的需要。如果您不想添加该库,请参阅这个答案 https://stackoverflow.com/a/4298836/400056.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)