【问题标题】:Decode HTML entities in android在android中解码HTML实体
【发布时间】:2011-02-24 12:35:00
【问题描述】:

我需要解码 HTML 实体,例如来自 ö至 ö 和 &到&。

URLEncoder.decode(str) 不做这项工作(从 % 符号转换)。 TextUtils 有 HTMLencode,但没有 HTMLdecode。

有没有解码HTML实体的函数?

【问题讨论】:

标签: html android decode


【解决方案1】:

您可以按照以下步骤使用 WebView 轻松表示任何 html 文本。

首先将您的数据转换为 html 格式:

String res=null;
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.N) {
res=Html.fromHtml(product.getDescription(),Html.FROM_HTML_MODE_COMPACT).toString();
}
else{
res=Html.fromHtml(product.getDescription()).toString();
}

然后将你的数据加载到 WebView 中:

myWebView.loadDataWithBaseURL(null, res, "text/html", "utf-8", null);

【讨论】:

    【解决方案2】:

    您可以通过调用从字符串中删除特殊字符

    responsestring.replace(“special char here”, “”);
    

    您可以像这样将响应从 htmlstring 转换为字符串 – Html.fromHtml(此处为响应字符串) 但是这种方法在 API 24 上已被贬低,因此您需要以正确的方式进行操作-

    if (Build.VERSION.SDK_INT >= 24)
    {
        post_description.setText(Html.fromHtml( response here , Html.FROM_HTML_MODE_LEGACY));
    }
    else
    {
        post_description.setText(Html.fromHtml( response here ));
    }
    

    【讨论】:

      【解决方案3】:

      Html.fromHtml(String html) 在 API v24 之后被弃用,所以这是正确的做法

        if (Build.VERSION.SDK_INT >= 24)
        {
             textView.setText(Html.fromHtml(htmlString , Html.FROM_HTML_MODE_LEGACY)));  
        }
        else
        {
             textView.setText(Html.fromHtml(htmlString));
        }
      

      【讨论】:

        【解决方案4】:

        Html class 应该这样做,但是据说不支持所有内容。它总是对我有用,但我从来没有 ö 所以我不能告诉这个。 尝试Html.fromHtml(yourStr)获取解码后的字符串。

        【讨论】:

        • 似乎在 API Level 16 中他们添加了Html.escapeHtml
        • 虽然可以完美运行,但我的代码相当复杂。为什么没有一些简单的方法可以做到这一点?
        • @sFuller 功能明智fromHtml != escapeHtml(来自android源代码的AFAICT)
        • escapeHtml?但我想做相反的事情(解码/取消转义 HTML)!
        【解决方案5】:

        您只需使用此代码即可完成此操作

          Html.fromHtml(String).toString();
        

        希望对你有帮助

        【讨论】:

        • 告诉我你的结果
        猜你喜欢
        • 2013-11-17
        • 2018-01-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-10-25
        相关资源
        最近更新 更多