网页中文乱码问题之不完全分析
2010-02-01 17:34
204 查看
前几天帮实验室弄个页面,遇到了中文乱码的问题,在网上找了些资料最终解决了,在这里总结一下。GB2312 – GBK – GB18030这三者是兼容的,但它们与UTF-8编码不兼容,这就是导致乱码问题的原因。如果你发现网页乱码,需要检查的地方有如下几个:(1)网页文件本身。假设这是一个静态html文件,不同的文本编辑器(或者不同的选项)做出的文本文件的编码可能是不同的。我这次遇到的问题就是这样,用DreamWeaver保存出来的网页文件是GB18030编码(可能是我没有注意到软件里的选项设置),但我在其它的所有地方都声明编码方式是UTF-8,于是在FireFox下就出现了乱码,不过IE居然可以很威武地正常显示。建议使用稍高级一点的文本编辑器(比如win下的UltraEdit, Editplus等等都可以)把编码方式转换一下,使其与其他地方的配置一致。(2)Apache的配置文件。在httpd.conf这个文件里有个AddDefaultCharset,这里可以设置默认的编码方式。这个东西会在浏览器向服务器发送请求时,包含在HTTP头信息中返回给浏览器。(3)网页的<meta>标签。一个典型的代码是这样的<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″>这样就声明了网页是UTF-8的编码。(4)网页脚本文件,如PHP里可以写header(”content-type:text/html; charset=utf-8″)据说这个替换掉HTTP头的信息,我没有试过,不太清楚。因为有这么多地方可以配置,当这些地方的配置出现不一致时,问题就出来了。<meta>标签,HTTP头,页面文件本身的编码,到底谁的优先级更高,不同的浏览器是不一样的。所以常会出现在IE下可以但在FF下乱码,或者反过来的情况。总之最好是让它们都保持一致啦。另外,还有一种情况是数据库的乱码,等以后遇到了再说。
相关文章推荐
- python 中文乱码问题深入分析
- html 中文乱码 HTML超链接中文乱码问题分析及解决方法
- python 中文乱码问题深入分析
- [笔记]关于网页的中文乱码问题解决
- Spring Boot下Mysql数据库的中文乱码问题分析
- Code:Blocks 中文乱码问题原因分析和解决方法!
- EditPlus 3 网页中文乱码问题
- eclipse编码格式全部正确,网页中文显示依旧乱码问题
- SSM框架Jsp页面POST提交的中文数据保存到数据库变成乱码问题的分析
- JSP中文传到Spring MVC controller乱码问题分析
- 真正解决HtmlAgilityPack抓取网页 中文乱码问题
- Java基础——孙鑫谈Java中文乱码问题产生原因分析(一)
- pymssql读取varchar字段中文显示乱码的问题分析
- python 中文乱码问题深入分析
- 用XMLHTTP Post/Get HTML页面时的中文乱码问题之完全Script解决方案
- python 中文乱码问题深入分析
- 分析substr来截取UTF-8中文字符串出现乱码问题
- Code::Blocks 中文乱码问题原因分析和解决方法
- Java中文乱码问题分析及解决办法
- JavaEE中用response向客户端输出中文数据乱码问题分析