Android(java)学习笔记80:Html嵌入到Java显示乱码

1. Html嵌入到Java显示乱码:

解决方案:

使用 loadData方法是中文部分会出现乱码,即使指定“utf-8”、“gbk”、“gb2312”也一样。

1   webView.getSettings().setDefaultTextEncodingName("UTF -8");//设置默认为utf-8
2   //webView.loadData(data, "text/html", "UTF -8");//API提供的标准用法,无法解决乱码问题
3   webView.loadData(data, "text/html; charset=UTF-8", null);//这种写法可以正确解码

 

或者考虑使用 loadDataWithBaseURL方法:

案例:

 1 WebView liudehua_web = (WebView)findViewById(R.id.mywebview01);
 2             String data ="<html>"+
 3                     "<body>"+
 4                     "<a href=www.baidu.com>"+"<h1>刘德华</h1>"+"</a>"+
 5                     "<p>刘德华,1961年9月27日出生于香港,祖籍广东江门,香港非官守太平绅士衔、"+ 
 6                     "香港特别行政区荣誉勋章佩戴者、中国残疾人福利基金会副理事长、亚洲新星导计划的发起人、大中华区乐坛和影坛巨星、"+ 
 7                     "华人娱乐圈影视歌综合发展最成功的代表性人物之一。作为歌手,他是香港乐坛“四大天王”之一,"+ 
 8                     "吉尼斯世界纪录中获奖最多的香港男歌手[1],曾六度夺得香港“十大劲歌金曲颁奖典礼”的“最受欢迎男歌星”奖。"+ 
 9                     "作为演员,他是香港“无线五虎”之一,参与演出的电影超过150部,先后获得三届香港电影金像奖最佳男主角奖,"+ 
10                     "两届台湾电影金马奖最佳男主角奖,曾担任第七届亚洲电影节及第四十九届台湾金马奖评审团主席。"+ 
11                     "他先后四次登上央视春晚舞台,享誉全球华人社会,被誉为华语娱乐圈的“常青树”。2008年6月23日,他与朱丽倩注册结婚,"+ 
12                     "2012年5月9日,二人喜得一女。</p>"+
13                     "</body>"+
14                     "</html>";
15                     
16             WebSettings websettings = liudehua_web.getSettings();
17             liudehua_web.loadData(data, "text/html;charset=utf-8", null);

text/html;charset=utf-8   : 设置页面内容是html编码格式是utf-8

posted on 2015-08-02 17:04  鸿钧老祖  阅读(319)  评论(0编辑  收藏  举报

导航