我从服务器中获取了几个html内容,我正在使用JSON解析。但是这会将我的html内容转换为unicode值。
对于例如:<p>Spend minimum $10 (in a single same-day receipt) at any outlet<\/p>
正在转换为,
;p>Spend minimum $10 (in a single same-day receipt) at any outlet </p>
现在,如果我尝试将其设置为我的WebView,它将自动显示HTML标记。如果我尝试使用TextUtils.encode
对数据进行编码,则会显示带有unicode值的文本。
任何人都可以帮助我。
我应该如何获取HTML内容并在WebView中显示?
答案 0 :(得分:2)
我没有准确地提出您的问题,但是,如果您想在网页视图中加载HTML,可以使用
webView.loadDataWithBaseURL(null, html, "text/html", "UTF-8", null);
如果您想转换&amp; lt和&amp; gt喜欢表示法,可以使用Jsoup图书馆
答案 1 :(得分:1)
伙计们感谢您的帮助。但我自己已经解决了这个问题。我已经阐述了解决问题的方法。
我做的是,
1)将unicode值转换为Spanned,就像这样,
Spanned ss=Html.fromHtml(;p>Spend minimum $10 (in a single same-day receipt) at any outlet </p>");
2)现在将此跨区转换为String,
String tempString=ss.toString();
3)现在将其设置为解决问题的WebView,
webView.loadData(tempString, "text/html","UTF-8");
答案 2 :(得分:0)
实际上,在传递给JSON编码器之前,这不是JSON编码器将数据转换为HTML实体,而是将其他层转换为。
JSON与HTML标记无关,通常只有解析器编码的引号(大多数解析器都支持Unicode)。
您可能需要更改服务器返回数据的方式,省略将HTML标记括号编码为HTML实体或将实体解码回应用程序。
<强>更新强>
要解码HTML标记中使用的HTML实体(以及其他标记),您可以使用StringEscapeUtils.unescapeHTML()
答案 3 :(得分:0)
要在Webview中显示HTML页面,为什么需要JSON。在XML中创建Web视图并在下面编写代码在Activity中,您可以看到HTML页面。
webView = (WebView)findViewById(R.id.webView);
FrameLayout mContentView = (FrameLayout) getWindow().
getDecorView().findViewById(android.R.id.content);
final View zoom = this.webView.getZoomControls();
mContentView.addView(zoom, ZOOM_PARAMS);
zoom.setVisibility(View.GONE);
webView.loadUrl("http://www.google.co.in/");