Locale和charset的关系

转载自:http://openwebx.org/docs/requestcontexts.html


Locale和charset是相对独立的两个参数,但是又有一定的关系。

Locale决定了要显示的文字的语言,而charset则将这种语言的文字编码成bytes或从bytes解码成文字。因此,charset必须能够涵盖locale所代表的语言文字,如果不能,则可能出现乱码。下表列举了一些locale和charset的组合:

表  Locale和Charset的关系

Locale 英文字符集 中文字符集 全字符集
ISO-8859-1 GB2312 Big5 GBK GB18030 UTF-8
en_US(美国英文)
zh_CN(简体中文)    
zh_TWzh_HK(台湾中文、香港中文)    

在所有charset中,有几个“全能”编码:

UTF-8

涵盖了unicode中的所有字符。然而用UTF-8来编码中文为主的页面时,每个中文会占用3个字节。建议以非中文为主的页面采用UTF-8编码。

GB18030

中文国际标准,和UTF-8一样,涵盖了unicode中的所有字符。用GB18030来编码中文为主的页面时有一定优势,因为绝大多数常用中文仅占用2个字节,比UTF-8短1/3。然而GB18030在非中文的操作系统中,有可能不能识别,其通用性不如UTF-8好。因此仅建议以中文为主的页面采用GB18030编码。

GBK

严格说,GBK不是全能编码(例如对很多西欧字符就支持不好),也不是国际标准。但它支持的字符数量接近于GB18030

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值