如何在android中将字符串转换为unicode

时间:2015-02-06 15:14:11

标签: android json unicode

我正在从unicodes到我的json应用解析一些android,api会提供unicodes\ue600图标,当我直接添加此unicode时进入textview textview.setText("\ue600"); textview,它会在json上显示右图标。但是当我从api setText&解析这个unicode时然后我unicode \ue600只在textview上显示unicodes。 我如何将这些字符串解析或转换为textview以获取{{1}}中的图标。

由于

5 个答案:

答案 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));