您的位置:首页 > 其它

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

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

ANSI和UTF-8文本编码的体积,我这里做了一些实验,同一个字符重复N次,均去掉了Unicode签名(BOM),如下表:

字符编码格式重复次数文件体积
英文、半角字符:
aANSI100次100 bytes
AANSI100次100 bytes
aUTF-8100次100 bytes
aUTF-81000次1000 bytes
aUTF-810000次10000 bytes
汉字、全角字符:
ANSI100次200 bytes
ANSI100次200 bytes
UTF-8100次300 bytes
®UTF-8100次200 bytes
UTF-8100次300 bytes
UTF-81000次3000 bytes
UTF-810000次30000 bytes
Unicode编码格式:
aUnicode100次200 bytes
Unicode100次200 bytes
®Unicode100次200 bytes
Unicode100次200 bytes
Unicode1000次2000 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。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: