Android 4.0 WebView 使用loadData加载网页乱码之解决办法
来源:互联网 发布:种子 知乎 编辑:程序博客网 时间:2024/06/05 06:43
android 4.0以上的版本,Webview若使用loadData会出现中文乱码
解决办法:
使用loadDataWithBaseURL方法
原因:
请看loadData和loadDataWithBaseURL区别
首先,从方法的定义来看:
public void loadData(String data, String mimeType, String encoding)
public void loadDataWithBaseURL(String baseUrl, String data, String mimeType, String encoding, String historyUrl)
loadDataWithBaseURL()比loadData()多两个参数,可以指定HTML代码片段中相关资源的相对根路径,也可以指定历史Url,两个方法的其余三个参数相同。
其次,两个方法加载的HTML代码片段有些不同
loadData()中的html 代码中不能包含'#', '%', '\', '?'四中特殊字符,这就为我们内嵌css样式等制造了麻烦,因为css中经常用'#', '%'等字符,需要如何处理呢?我们需要用UrlEncoder编码为#, %, ', ? ,所以loadData需要对这些特殊字符进行转换,而loadDataWithBaseURL不需要转换。
loadData() 中特殊字符的转换方法:
StringBuilder buf = new StringBuilder(html.length());
loadDataWithBaseURL 使用方法:
StringBuilder data = new StringBuilder("<html><body bgcolor=\"#F2F6F8\">");
webView.loadDataWithBaseURL("", data, "text/html", "UTF-8","");
阅读全文
0 0
- Android 4.0 WebView 使用loadData加载网页乱码之解决办法
- Android 4.0 WebView 使用loadData加载网页乱码之解决办法
- WebView 使用loadData加载网页乱码之解决办法
- android webView 加载HTML代码使用loadData方法中文乱码问题
- Android webview loadData 中文乱码
- android webview loaddata乱码问题
- android webView.loadData乱码解决
- android webView.loadData乱码解决
- android webView.loadData乱码解决
- android webView.loadData乱码解决方法
- android webView.loadData乱码解决方案
- android webView.loadData乱码解决
- android webView.loadData 乱码解决
- Android webview loaddata乱码问题解决
- android webView.loadData乱码解决
- Android webview loadData 中文乱码
- Android webView.loadData 乱码解决
- Android webView.loadData乱码问题
- 测试
- 8 张图理解 Java
- Java处理手机号中间4位替换成*
- html() test() val()的区别
- Gartner2018十大预测:亚马逊、苹果等数字巨头将进行“自我颠覆”
- Android 4.0 WebView 使用loadData加载网页乱码之解决办法
- 163邮箱SMTP发送源码及jar包
- Codeforces好题专栏(前三道)
- (26)监听器
- git的使用
- centos7安装cdh5
- 打印Ext组件中的内容
- jquery Validate验证
- ImageMagick (Magick++ for C++) configuration in Visual Studio 2017