我正在读取URL中的内容并修改字符串并再次在Webview中加载数据。但它无法正确加载。接受scrrenshot。任何猜测
WebSettings settings = webView.getSettings();
settings.setDefaultTextEncodingName("utf-8");
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.FROYO) {
String base64 = Base64.encodeToString(benefitsCore.getBytes(), Base64.DEFAULT);
webView.loadData(base64, "text/html; charset=utf-8", "base64");
} else {
String header = "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>";
webView.loadData(header + benefitsCore, "text/html; chartset=UTF-8", null);
}
private String rzBenefitsCoreText() {
String rzCoreText = null;
try {
URL url = new URL(getActivity().getResources().getString(R.string.bby_rz_sliver_benefits_url));
BufferedReader br = new BufferedReader(new InputStreamReader(url.openStream()));//"ISO-8859-1")
StringBuilder builder = new StringBuilder();
String inputLine;
while ((inputLine = br.readLine()) != null)
builder.append(inputLine);
rzCoreText = builder.toString().replace("Silver member", "Core member");
Log.i("Data:", rzCoreText);
br.close();
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return rzCoreText;
}
答案 0 :(得分:0)
我遇到了同样的问题。它基于手机上的字体。我的意思是,如果你在调试器中查找字符串没有任何错误,但在我的情况下,字体没有涵盖与我的文本相关的所有unicode字符,所以有些字符没有像你的那样正确显示。 可能正在使用其他字体帮助您解决此案例。