在android中解码HTML实体
我需要解码HTML实体,例如从ö;toö和&;到&在android中解码HTML实体,html,android,decode,Html,Android,Decode,我需要解码HTML实体,例如从ö;toö和&;到& URLEncoder.decode(str)不执行此任务(从%notations转换)。TextUtils有一个HTMLencode,但没有HTMLdecode 有解码HTML实体的功能吗?应该这样做,但据说不支持所有功能。它一直对我有效,但我从来没有过,所以我不能说这一次。 尝试Html.fromHtml(yourStr)获取解码字符串。只需使用此代码即可 Html.fromHtml(String).toString();
URLEncoder.decode(str)
不执行此任务(从%notations转换)。TextUtils有一个HTMLencode,但没有HTMLdecode
有解码HTML实体的功能吗?应该这样做,但据说不支持所有功能。它一直对我有效,但我从来没有过,所以我不能说这一次。
尝试
Html.fromHtml(yourStr)
获取解码字符串。只需使用此代码即可
Html.fromHtml(String).toString();
希望这将帮助您Html。在API v24之后,fromHtml(字符串Html)已被弃用,因此这是正确的方法
if (Build.VERSION.SDK_INT >= 24)
{
textView.setText(Html.fromHtml(htmlString , Html.FROM_HTML_MODE_LEGACY)));
}
else
{
textView.setText(Html.fromHtml(htmlString));
}
您可以通过调用
responsestring.replace(“special char here”, “”);
您可以将响应从htmlstring转换为字符串,如下所示——
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 ));
}
通过以下步骤,您可以使用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);
似乎在API级别16中,他们添加了
Html.escapeHtml
,虽然它工作得很好,但I代码相当复杂。为什么没有简单的方法来实现这一点?@sFuller Functionality wisefromHtml!=escapeHtml
(来自android源代码的AFAICT)escapeHtml
?但是我想做相反的事情(解码/unescape HTML)!看答案让我知道你的结果