【问题标题】:How to decode the unicode char in Java string?如何解码Java字符串中的unicode char?
【发布时间】:2016-03-20 23:17:48
【问题描述】:

在我的 android 项目中,我需要使用 TextView 显示文本,但我遇到了以下字符串的一个非常糟糕的问题。请有人帮助我。

这是我的 java 字符串:

TRAI floats new paper on \\u0027Net Neutrality\\u0027: Lists disadvantages of zero-rating plans

在我的 TextView 中是这样显示的:

TRAI floats new paper on \u0027Net Neutrality\u0027: Lists disadvantages of zero-rating plans

我希望它显示如下:

TRAI floats new paper on 'Net Neutrality': Lists disadvantages of zero-rating plans"

我该怎么办?提前致谢!

更新:

我已经尝试过使用此代码,但不适用于我。

title.setText(Html.fromHtml(news.getTitle()).toString())

我希望为所有 '\uxxxx' (如字符)提供解决方案,而不仅仅是 '\u0027'。

【问题讨论】:

    标签: java android string unicode


    【解决方案1】:

    不要加倍反斜杠:

    String s = "TRAI floats new paper on \u0027Net Neutrality\u0027: Lists disadvantages of zero-rating plans";
    

    这将具有值:

    TRAI floats new paper on 'Net Neutrality': Lists disadvantages of zero-rating plans
    

    【讨论】:

    • 是的,我知道,但是字符串不在我的控制之下,我从互联网上得到了字符串,它只是带有双反斜杠。
    【解决方案2】:

    试试这个

    str = org.apache.commons.lang.StringEscapeUtils.unescapeJava(str);
    

    参考Apache commons lang

    【讨论】:

    • 如何将您的答案标记为最终答案?这是另一个问题,哈哈
    【解决方案3】:

    用途:

    textView.setText(Html.fromHtml("unicode_character");
    

    【讨论】:

    • 这是我的代码,对不起,我应该把它放到问题中。 title.setText(Html.fromHtml(news.getTitle()).toString()) 不要为我工作。
    • 用单反斜杠替换双反斜杠
    • 是的,我知道,但是字符串不在我的控制之下,我从互联网上得到了字符串,它只是带有双反斜杠。
    猜你喜欢
    • 1970-01-01
    • 2017-07-14
    • 2017-11-23
    • 2018-09-21
    • 2019-07-26
    • 1970-01-01
    • 2011-10-09
    • 2020-10-27
    相关资源
    最近更新 更多