年轻?大有所为!——问题集一网页中文乱码

网页中文乱码

1)分析

code软件:sublime text。

sublime text默认使用UTF8编码格式打开文件,导致GBK编码格式的中文出现乱码,需要sublime text将文件以GBK打开即可。


首先插件安装

安装SublimePackage Control。
        在Sublime Text 2上用Ctrl+~打开控制台并在里面输入以下代码,Sublime Text 2就会自动安装Package Control:

import urllib2,os; pf='Package Control.sublime-package'; ipp=sublime.installed_packages_path(); os.makedirs(ipp) if not os.path.exists(ipp) else None; urllib2.install_opener(urllib2.build_opener(urllib2.ProxyHandler())); open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read()); print('Please restart Sublime Text to finish installation')  

import urllib2,os; pf='PackageControl.sublime-package'; ipp=sublime.installed_packages_path();os.makedirs(ipp) if not os.path.exists(ipp) else None;urllib2.install_opener(urllib2.build_opener(urllib2.ProxyHandler()));open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen('http://sublime.wbond.net/'+pf.replace('','%20')).read()); print('Please restart Sublime Text to finish installation')

重启SublimeText 2;

然后使用Ctrl+Shift+P打开命令行模式,在里面输入Install Package即可搜索需要的Package。使用“ConvertToUTF8”或“GBK Encoding Support”即可正常读取和写入CJK格式的文件了。

从而就可选择编码方式:


那么,真正造成HTML中文内容乱码的原因了?

html文件是有编码格式的,在特定的编辑器中才能看出来,并进行设置。

html文件中头部的"content-type"中设置的"charset"是告诉浏览器打开该文件的编码方式。

归结为一句,就是:浏览器中打开HTML文件编码方式与源文件编码方式不一致的原因!

最后,我们再来添加一些有关编码方式的知识

Gbk和uff-8编码格式字符均使用双字节来表示,只不过为区分中文,将其最高位都定成1

UTF8编码则是用以解决国际上字符的一种多字节编码,它对英文使用8位(即一个字节),中文使用24位(三个字节)来编码。对于英文字符较多的论坛则用UTF8节省空间。UTF-8则包含全世界所有国家需要用到的字符。UTF-8编码的文字可以在各国各种支持UTF8字符集的浏览器上显示。比如,如果是UTF8编码,则在外国人的英文IE上也能显示中文,而无需他们下载IE的中文语言支持包。

GBK包含全部中文字符;GBK是在国家标准GB2312基础上扩容后兼容GB2312的标准。

所以,对于英文比较多的论坛,使用GBK则每个字符占用2个字节,而使用UTF8英文却只占一个字节。UTF8是国际编码,它的通用性比较好,外国人也可以浏览论坛,GBK是国家编码,通用性比UTF8差,不过UTF8占用的数据库比GBK大。

详细内容可以去看看这个http://jingyan.baidu.com/article/47a29f24332012c0142399f1.html网站开发中常见的编码和乱码问题的解决。使用notepad的同学就要注意一点,这里就讲了在Notepad++和Sublime Text不一样,Notepad++中,默认UTF-8编码已经包含BOM,我们看到选择项里面还有一项"以UTF-8无BOM格式编码",这一项才是纯UTF-8格式的编码。


2)这样就可以去测试啦


声明文件打开编码方式,在head里添加:

<meta http-equiv="Content-Type" Content="text/html; charset=UTF-8" />

保存运行


这是说明是一致的编码格式。

假如我将HTML文件-save with GBK,运行,当然乱码啦






  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值