utf-8编码已经成为主流
今天,我在网上看到一张图,据说是来自Google内部的统计——世界上所有网页编码统计图。

第一眼看到这张图,我感到很振奋,utf-8编码终于成为了主流。
可是再看第二眼,顿时就泄气了。因为份额下降的是ASCII和ISO 8859-1这两类编码,而GB类的中文编码份额几乎保持不变。那样的话,utf-8编码份额的上升,其实没有多大实际意义,因为ASCII和ISO 8859-1本身就是同utf-8兼容的,转不转化无所谓。
GB类的中文编码,才是真正需要被淘汰的。除了最基本的ASCII码,它同所有其他编码都不兼容,为互联网应用带来无尽的麻烦。许多很简单的问题,就是因为要考虑语言转化,而变得无比麻烦。
可是,直到今天,我们国家主流的门户网站,全部都是GB2312编码,这让人无法理解。我怀疑是不是有什么法规,规定一定要这样做。如果真是这样,那么实在是太愚蠢了。
P.S.
想了解字符编码基本知识的朋友,可以参考我以前的笔记。
(完)
评论
22 说:
中文utf8也麻烦,还有unicode-8,unicode-16,unicode-32,ibm14401(不记得数字了,随便写个)什么的大字符集
即便是中文gb2312,实际上windows上的gb2312就是gbk
2008年05月06日 23:32 |
| 引用
LI Daobing 说:
iso8859-1 与 UTF-8 不兼容
2008年05月07日 08:38 |
| 引用
atlas 说:
那台湾的Big5和香港的编码与UTF兼容吗?
2008年05月07日 09:35 |
| 引用
aa 说:
2008年05月07日 10:38 |
| 引用
Ruan YiFeng 说:
big5也属于应该被淘汰的编码。
我写得不准确,应该是iso 8859-1与Unicode兼容。
2008年05月07日 11:36 |
| 引用
Fwolf 说:
隐约记得gb2312作为国标编码,是有规定要求在某些地方必需要使用的
(希望下一位来补充)
2008年05月07日 14:23 |
| 引用
donews 说:
阮先生能不能够处理一下多维新闻的全文RSS乱码问题。
我在第一时间就订阅了阮先生制作的多维和德国之声两个全文RSS。但现在发现多维RSS的乱码很严重,不知道有没有办法解决。
2008年05月07日 15:16 |
| 引用
... 说:
我猜。。。gb2312普及是因为dreamweaver默认设置的字符集就是这个。。。。
2008年05月07日 16:44 |
| 引用
Ruan YiFeng 说:
2008年05月07日 23:16 |
| 引用
Ruan YiFeng 说:
2008年05月07日 23:18 |
| 引用
伊水笑 说:
UTF-8的编码还是不错滴……
应该成为主流啊。
2008年05月08日 21:53 |
| 引用
clino 说:
gb 码至少有个好处,传输和存储所占的空间比 UTF8 会少一些
2008年05月09日 15:01 |
| 引用
ppip 说:
这个还是需要时间的,更需要的是国际化的视野。
如果只针对国内用户,GB又如何呢?
2008年05月13日 21:42 |
| 引用
Ruan YiFeng 说:
不是只考虑网页浏览的,还有feed的编码。很多时候会用feed的聚合,编码不一致就很麻烦。
2008年05月14日 20:37 |
| 引用
xun 说:
对于中文字符远远超过英文字母的内容,UTF8岂非比原始的Unicode更浪费存储空间
2008年05月21日 16:43 |
| 引用
徐保才 说:
我想用uft-8编比较好,原因之一是学习PHP语言中有许多程序是要求用这个编的,用GB会出现小方框,可是我找了许多输入法,只有南级星是支持UFT-8的,输入里面可以,但只显示一半字,无耐。
2008年06月03日 17:36 |
| 引用
杨曦 说:
前几天我刚刚被文字乱码搞的郁闷。。。项目最好用utf-8统一最好,放到哪里都不会出现乱码,页面文件都要utf-8,js,css包括java语句里面只要有response的都要设置成utf-8输出
2008年06月14日 11:00 |
| 引用
杨曦 说:
博主,你的这个按钮很搞笑哦。。。“
还有你检测一下,如果是同一个session 就不用让人家重复的输入大名,电子邮件,直接记住就好了,当session关闭的时候你清空一下
2008年06月14日 11:03 |
| 引用
flyinflash 说:
1、如果是流量大的网站,使用非UTF8主要是因为流量,流量是要算钱的,UTF8一个字1符是其它的两到三倍,像中文这类亚洲字符,自然大多数情况是三倍以上
如果一个网站一年的网费是500万,使用UTF8就是1500万……
2、其它流量不咋样的网站
主要就是TMD的WINDOWS。国内一群猪都是使用TMD的WINDOWS作教育工具,应试也是TMD的WINDOWS,WINDOWS没有以UTF8为核心的概念,所以那些无辜的学生认识UTF8的重要性概率大大降低。
使用LINUX的学生就不会,LINUX下几乎什么都是UTF8的,一来国际化省事,本地化也省事。
2008年07月14日 21:35 |
| 引用
flyinflash 说:
请把上面的“TMD”去掉
2008年07月16日 01:54 |
| 引用
spider 说:
不用把 TMD 去掉,那些蠢猪该骂
2008年07月31日 11:57 |
| 引用
redspider 说:
2008年08月01日 09:39 |
| 引用
您的大名 说:
utf8是对中文等象形文字的歧视
英文只用一个字节,
法文等一些用两个字节
中文最少三个字节。
用gb2312可以大量降低存储和宽带开销
2008年08月24日 07:46 |
| 引用
koaqiu 说:
但是我知道中文必须要两个字节才能表示完整的
2008年08月25日 13:51 |
| 引用
kopision 说:
2008年08月27日 18:50 |
| 引用
林海枫 说:
UTF-8只是Unicode编码方式中的一种,与UTF-16相比,它的最小编码单位是字节,而UTF-16编码的最小单位是双两节。UTF-8最大的好处是可以与ASCII兼容,因此,英文字母在ascii和utf-8中的数值是一样的,用一个字节的储存空间就可以了,UTF-8事实上就是这样的。千万别和我说需要两个字节。而在中文根据UTF-8的编码规则,要用三个字节来储存,千万别和我说需要两个字节。
而UTF-16是以双字节为编码单位的,因为无论英文和中文,至少需要2个字节的储存单位,而事实上,他们都是两个字节来存放(这并不代码所有的unicode字符仅需要两个字节就可以了,有一些是需要4个或更大)。
对于Unicode编码方式来说,如果内容为英文,采用 UTF-8编码方式最省空间,每个字符只需要一个字节就可以了。如果内容为中文,采用UTF-16编码方式最省空间,每个中文文字需要两个字节(相反在UTF-8中需要三个字节)。
UTF-8和UTF-16都是Unicode的编码方式,可以相互转换。gb2312也是国际编码,应该可以与Unicode完全兼容,换言之可以转换。
故对于中文网页来说,应该使用UTF-16, 这样空间占用最少,而且支持Unicode的浏览器都可以正确转换;我想gb2312也一样(但未证实)
因为对于中文网页,应使用UTF-16或gb2312,而不应该使用UTF-8
其实Unicode的编码方式有好几种,除了上面两种外。之所以有好几种,是根据不同语言文字的需要而提出的。
2008年12月10日 10:23 |
| 引用
华晨 说:
我也在学习网站制作,也被utf-8编码困扰着
2008年12月16日 14:19 |
| 引用
我的大名 说:
utf-8汉字多一字节也没什么吧?本来汉字就多,事实上,gb18030里双字节还不够用了,甚至有用更多字节的。而utf-16有字节序问题,utf-8则没有。
另外楼上有位朋友还扯到什么歧视上去了。这有点好笑了。人家英文有几个字母呀?难道你想所有汉字用一个字节来表示?
2008年12月24日 02:00 |
| 引用
您的大名 说:
博主很搞笑,GB是“国标”的意思,国家不用国标用什么?有什么难以理解的?
2009年04月29日 16:03 |
| 引用
按了两下 说:
希望全世界统一编码啊
2009年05月02日 13:58 |
| 引用
mark 说:
GB18030兼容GB2312,常用字都是双字节,只有生僻字采用4字节。而UTF-8汉字全部都是3字节。并且unicode在BMP上对汉字的确有“歧视”,不遵循汉字的习惯而是以老外的方式来组织。
2009年05月25日 15:09 |
| 引用
mark 说:
2009年05月25日 15:15 |
| 引用
mark 说:
有关GB18030编码来由的传说
简单说一下我对这段历史的理解吧,说错了欢迎大家指正。
1,GB2312是很老的东西了,早就发现不够用了。
2,94年(还是之前)国家推出了建议性标准gb13000,这个标准其实就是utf-8标准(除了名字,完全一样),同时也建议微软公司采纳。--(据说是1993年,GB13000,应该是ISO10646)
3,微软借口说gb18000还不成熟,为了取得中国市场的垄断地位,自己搞了一套汉字标准,于是它就随着win95和office之类的流行起来了,国家看生米已经煮成了熟饭,只好把这套标准定为国标GBK标准。--(其实只是指导性标准,并非强制性,GB18030是强制性标准)
4,微软到了99年(前后吧),又说GBK已经落伍了,现在流行utf-8标准,准备全盘转换成utf-8,这些把有关部门惹怒了。NND,当年我们推utf-8你说不成熟,自己搞了一套,现在赚得盆满钵满了又自己说要推utf-8了,你丫微软分明就没把政府放在眼里。
5,于是政府怒了,强制推行gb18030标准(这个标准前面兼容GBK,其他码位兼容utf-8),算是过渡标准吧。要求微软强制执行,否则产品不得在大陆买。于是基本搞死了微软的WindowsMe,差点搞死了Office2000(据说发行前几个月,微软除了改字符编码就没干其他什么事情)--(确实,WinMe是我认为的最差的Windows版本,而office2k也是前不着村,后不着店,前后兼容性都差)
6,由于以上历史原因,现在就是GB2312,GBK,GB18030,UTF-8并存了。
7,如果不是万恶的微软,我们早就用上UTF-8了。
8,所以说微软和政府关系一直很僵,不是说着玩的,微软太目中无政府了。
9,以上是我从其他地方看来的,可能记得不是太真切了,说的不对请大家指正。
【按】这是在水母Linux版上的讨论所引发的。只有用Linux的普通用户才会关心编码问题,因为选择太多了,选哪个好确实是个问题。从长远看,应该选 utf-8,可从一般使用角度来看,GBK足够也适合以前的文件现状,并且也可以同UTF-8编码的人交流,程序支持就是了。所以我目前还是用GBK。也许应该用Utf-8。香港政府倒是在推广ISO10646的,还有免费字体供应。
http://tech.it168.com/knowledgebase/Articles%5C1%5C5%5C5%5C155d3300879cd9a41b90c4d7ff8c1c1b.htm
2009年05月25日 16:13 |
| 引用