我正在从unicodes
到我的json
应用解析一些android
,api会提供unicodes
等\ue600
图标,当我直接添加此unicode时进入textview
textview.setText("\ue600");
textview
,它会在json
上显示右图标。但是当我从api
setText
&解析这个unicode时然后我unicode
\ue600
只在textview
上显示unicodes
。
我如何将这些字符串解析或转换为textview
以获取{{1}}中的图标。
由于
答案 0 :(得分:7)
将您的unicode
转换为此格式
&然后在textview
textview.setText(Html.fromHtml(your_unicode_here));
中使用这样的内容
它应该工作。
答案 1 :(得分:2)
StringEscapeUtils可以完成大部分工作,但只能达到HTML4。对于未涵盖的角色,您可以创建自己的类并根据需要添加。这是一个示例类
public class HTMLDecoder {
public static String decodeHTML(String html) {
String out = StringEscapeUtils.unescapeHtml4(html);
out = out.replaceAll("®", "®");
out = out.replaceAll("â\u0084¢", "™");
return out;
}
}
添加到build.bradle
compile 'org.apache.commons:commons-lang3:3.0'
答案 2 :(得分:1)
以下对我来说很好。
String unicode = "\u0048\u0065\u006C\u006C\u006F";
String Title = StringEscapeUtils.unescapeJava(unicode);
System.out.println(Title);
并在compile 'commons-lang:commons-lang:2.6'
文件中添加依赖关系:build.gradle
。
答案 3 :(得分:0)
如何解析JSON数据?如果您使用的是Gson,则可以使用GsonBuilder.disableHtmlEscaping()方法显示正确的字符而不是代码。
答案 4 :(得分:0)
textview.setText(Html.fromHtml(UNICODE_CHARS));