【问题标题】:é=é: need to show as it isé=é:需要按原样显示
【发布时间】:2013-04-19 11:27:45
【问题描述】:

我从服务器收到一些文本格式的响应,它工作正常,但在某些情况下我没有得到字符串。

解释:- 我的数据库有一个名称,例如 cupcaké,但是当我解析数据时,它显示给我cupcaké。我想展示它就像cupcaké

我在utf-8 的帮助下尝试了URL.EncodeURL.Decode 函数,但它们都没有帮助。我需要适用于所有特殊字符的通用解决方案,不仅适用于这个字符。
这是我的 jsonparser 类,我可以在这个文件中进行更改吗?或某处?

HttpURLConnection conn = null;
    StringBuilder jsonResults = new StringBuilder();
    try {
        URL url = new URL(str);
        conn = (HttpURLConnection) url.openConnection();
        InputStreamReader in = new InputStreamReader(conn.getInputStream());

        // Load the results into a StringBuilder
        int read;
        char[] buff = new char[1024];
        while ((read = in.read(buff)) != -1) {
            jsonResults.append(buff, 0, read);
        }
        json = jsonResults.toString();         
    } catch (MalformedURLException e) {
        Log.e(LOG_TAG, "Error processing Places API URL", e);

如何在屏幕上显示它的原样?
请给我任何参考或提示。

【问题讨论】:

    标签: android utf-8 special-characters


    【解决方案1】:

    经过长时间的搜索,我找到了一个很好的答案。这些是 html 实体,可以使用以下代码显示:

    Html.fromHtml(Html.fromHtml((String) yourstring).toString());  
    

    现在每个 html 实体都转换为实际的字符串。您可以找到更多详细信息here

    【讨论】:

      【解决方案2】:

      您需要研究短信编码概念。 尝试一些参考: http://www.codeproject.com/Tips/470755/Encoding-Decoding-7-bit-User-Data-for-SMS-PDU-PDU

      【讨论】:

      • 请包含参考中的一些示例代码,以便在链接失效时您的答案包含有价值的信息。
      【解决方案3】:

      请注意,当您在问题中输入cupcaké 时(在我编辑它之前),浏览器将其显示为cupcaké(再次出现,请查看答案来源:cupcaké)。这些是“html实体”,您可以要求您喜欢的编程语言将它们解码为相应的字符。在 php 中,您将使用 html_entity_decode()

      【讨论】:

        猜你喜欢
        • 2018-03-01
        • 2011-08-07
        • 2013-08-30
        • 1970-01-01
        • 1970-01-01
        • 2021-05-02
        • 2013-04-18
        • 2023-03-10
        • 1970-01-01
        相关资源
        最近更新 更多