关于彼此的称呼 订阅此博客

如何订阅博客?

Blog首页关于和平海底Blog存档联系王志勇网站地图友情链接

ANSI和UTF-8文本编码的体积比较 - 王志勇的Blog
王志勇(自由勇):程序设计。
1980-09-26 天秤座
与我联系:信息反馈留言板

与此相关的链接
我的Blog英文版 Cutegd
自由勇的休闲站 Auciou

Blog存档 Archives

2008年07月(1)
2008年06月(9)
2008年05月(12)
2008年04月(15)
2008年03月(26)
2008年02月(22)
2008年01月(29)
2007年12月(30)
2007年11月(28)
2007年10月(30)
2007年09月(8)
2007年08月(8)
2007年07月(21)
2007年06月(23)
2007年05月(31)
2007年04月(34)
2007年03月(29)
2007年02月(18)
2007年01月(41)
2006年12月(23)
2006年11月(10)
2006年10月(10)
2006年09月(29)
2006年08月(33)
2006年07月(17)
2006年06月(30)
2006年05月(4)
2006年01月(3)
2005年09月(4)

版权声明:此网志按照创作共用约定的方式授权,请勿转载。

本Blog使用中国电信服务器

Friends Contact

ANSI和UTF-8文本编码的体积比较

王志勇 发表于 2007年01月17日 12:15

语言设置指的是<meta>这里的charset,如简体中文是charset=gb2312,UTF-8是charset=utf-8;文本编码指的是文件的储存格式,我们新建的文本文件默认都是ANSI格式,所以不能含有如©、®这类字符。为了不让网页出现乱码,语言设置和文本编码应该相对应,简体中文的文本编码格式是gb2312,UTF-8文本编码格式是UTF-8。语言设置和文本编码对于任何客户端网页都适用,如.htm、.asp、.php、.jsp、.aspx的网页。

ANSI和UTF-8文本编码的体积,我这里做了一些实验,同一个字符重复N次,如下表:

字符编码格式重复次数文件体积
英文、半角字符:
aANSI100次100 bytes
AANSI100次100 bytes
aUTF-8100次103 bytes
aUTF-81000次1003 bytes
aUTF-810000次10003 bytes
汉字、全角字符:
ANSI100次200 bytes
ANSI100次200 bytes
UTF-8100次303 bytes
®UTF-8100次203 bytes
UTF-8100次303 bytes
UTF-81000次3003 bytes
UTF-810000次30003 bytes
Unicode编码格式:
aUnicode100次202 bytes
Unicode100次202 bytes
®Unicode100次202 bytes
Unicode100次202 bytes
Unicode1000次2002 bytes

总结:(以下的byte就是字节)

1、半角的字符,如英文、数字、半角符号,ANSI和UTF-8文本编码的体积比是1:1,UTF-8格式会多出3个byte。
2、中文字符,ANSI和UTF-8文件的体积比是1:2,UTF-8格式多出3个byte。
3、©、®这2个字符,在UTF-8格式下,与中文字符的体积一样。
4、韩文字符不能使用ANSI格式。韩文在UTF-8格式下,一个字符占用3个byte;韩文在Unicode格式下,一个字符占用2个byte;
5、Unicode码则比较折中,所有字符都占用2个byte。

总之,英文、数字、半角符号,在ANSI和UTF-8编码格式下都占用1个byte;中文,全角标点,在ANSI下占用2个byte,在UTF-8下占用3个byte。

UTF-8的Trackback: http://www.auiou.com/capable/trackbacksw.jsp?kskv00001188
» 直接发送Trackback到此文章  » GB2312及其它语言的Trackback地址


有和平天使们的4条评论 (4 Peaceful Angels' Comments):

1   自由勇 发表于 2007-01-17 16:15
Trackback来自 《要不要使用UTF-8编码?

本Blog开通了近5个月,网页一直使用gb2312语言、文本使用标准ANSI编码。中文Blog在2005年、2006年这两年,呈现出了极其壮观的场面,Blog在网络中,几乎可以最大程度地促进和改善一个人的理性思考能力。中文Blog,UTF-8语言编码占多数,我估计约占70%,gb2312语言编码约占30%。

2   游客 发表于 2007-04-04 10:48
自由勇在分析时有些错误,如果没猜错的话,以上测试均是使用 Windows 中的 记事本来完成的,错误在于每个 UTF-8 或 Unicode 体积都多出那三个或两个字节,因为记事本只能正常用于 Windows 中,且只能用来输入一些文本,别无他用,不能用来编程,当然,用来输入 HTML 是可以的,因为浏览器会忽略这个错误;


错误:
Windows 中的记事本是通过文本文件的前三个(UTF-8)或前两个(Unicode)字节来区分整个文本文件所使用的编码,且该机制不兼容任何其它文本编辑器,如果楼主会写程序的话就可以很容易看到记事本都是擅自加的哪几个字符;

楼主是做网页的,推荐楼主用 Dreamware 来测试正确的文本体积,使用记事本将得到错误的答案

3   自由勇 发表于 2007-04-04 10:53
回游客,你很细心,谢谢你提出的问题,但这并不是错误,我这里主要用EmEditor做测试。除了Dreamweaver的文本系统之外,有条件还可以用ASP、PHP、JSP分别测试一下写入的UTF-8、Unicode文本文件的体积。

4   kukukuan@163.com 发表于 2007-04-05 11:42
EmEditor存UTF8的时候会提示要不要加UNICODE签名,不加签名的话,会少3个

加UNICODE签名的做法在其他平台兼容性上有问题

即刻发表评论 (Deliver a prompt comment)

名字: (*必填)
网址: (可省,仅限于Blog地址)

正文:

      记住信息?

直接发送Trackback到此文章

说明:请勿发送垃圾信息、垃圾邮件;本评论系统不支持HTML标签。(您的留言需要审核)

文章分类 Category:
Blog的发展 Development
为什么写博客 W-do we Blog
互联网 Internet
社会 Society
教育 Education
BBS社区研究 Community
编程 Program
友人 Younet
QQ研究 QQ Research
公告 Announcement

最新的评论 Comments:
» 再次编写论坛程序中
» 3G的CPU的体验
» Blog程序于2006
» 编程、设计和撰稿
» Blog无聊怎么办
» 看《功夫熊猫》
» 职场
» 奢侈的验证码

近期的主题:
再次编写论坛程序中
职场
看《功夫熊猫》
最近议题
QQ头像乱跑的问题
音乐有恢复振动频率之功效
法则的伦理
演员角色与观众印象
今儿一天梦见孩子两次
有效的资讯
神秘现象
勤快的清道夫
今天调整了网页的title
寻找内在的东西
成熟与否
全国默哀3分钟
移动和电信的服务
关切earthquake受灾人民
有关原创
看《圣斗士星矢 极乐净土篇》的3~4话
支持中文Blog
英文的直译和意译
保持大型鱼的鱼缸的高清澈
Just create somewhat new consciousness
密切人际关系的生命周期
阿良到来
刷牙后不要立即睡觉


Copyright © 2006-2008 auiou.com All rights reserved.
此Blog程序由王志勇编写