1、WebView中使用LoadData直接显示中文字时出现乱码。
myWebView.loadData("我的测试中文字", "text/html", "utf-8");
如果内容包含HTML内容,最好这样写
myWebView.loadData(URLEncoder.encode("<font>我的测试中文字</font>", "utf-8"), "text/html", "utf-8");
直接这样写多数情况下是会显示乱码的,因为部分手机的浏览器默认编码不支持中文,网上有说如下的解决方案,
myWebView.getSettings().setDefaultTextEncodingName("utf-8");
虽然这样设置了默认的文本编码为utf-8或gb2312等,但部分手机仍有可能显示为乱码,具体原因暂时没搞清楚;
网上有提到另外一个解决方案:
myWebView.loadDataWithBaseURL(null,"测试中文", "text/html", "utf-8",null);
采用这个方法能够解决大部分的乱码问题。
2、使用WebView加载SD卡中的HTML文件。
myWebView.loadUrl("file://mnt/sdcard/myfolder/index.html");
网上有说将file改为content也可。