字符的编码无论对于做网页还是编程都是比较重要的。在做网页中经常有utf-8和gb2312的转换,在VC.net里,_T()函数也经常用到。下边是一些常见的字符编码简介。

ASCII

码美国(国家)信息交换标准(代)码,一种使用7个或8个二进制位进行编码的方案,最多可以给256个字符。由于标准 ASCII 字符集字符数目有限,在实际应用中往往无法满足要求。为此,国际标准化组织又制定了 ISO2022 标准,它规定了在保持与 ISO646 兼容的前提下将 ASCII 字符集扩充为 8 位代码的统一方法。 ISO 陆续制定了一批适用于不同地区的扩充 ASCII 字符集,每种扩充 ASCII 字符集分别可以扩充 128 个字符,这些扩充字符的编码均为高位为 1 的 8 位代码(即十进制数 128~255 ),称为扩展 ASCII 码。

一般地说,开放的小型操作系统(LINUX 、WINDOWS等)采用ASCII 编码,而大型主机系统采用EBCDIC编码。在发送数据给对方前,需要事先告知对方自己所使用的编码,或者通过转码,使不同编码方案的两个系统可沟通自如。

GB2312

注意到楷书字体的名字是“楷体_gb2312”。为了满足国内在计算机中使用汉字的需要,中国国家标准总局发布了一系列的汉字字符集国家标准编码,统称为GB码,或国标码。其中最有影响的是于1980年发布的《信息交换用汉字编码字符集 基本集》,标准号为GB 2312-1980,因其使用非常普遍,也常被通称为国标码。GB2312编码通行于我国内地;新加坡等地也采用此编码。还有一种GBK码和它是有区别的。

BIG5

为统一繁体字符集编码,1984年,台湾五大厂商宏碁、神通、佳佳、零壹以及大众一同制定了一种繁体中文编码方案,因其来源被称为五大码,英文写作Big5,后来按英文翻译回汉字后,普遍被称为大五码。记不记得以前玩繁体游戏要下个大五码转换么?

UNICODE

如果有一种编码,将世界上所有的符号都纳入其中,无论是英文、日文、还是中文等,大家都使用这个编码表,就不会出现编码不匹配现象。每个符号对应一个唯一的编码,乱码问题就不存在了。这就是Unicode编码。

UTF8

为了提高Unicode的编码效率,于是就出现了UTF-8编码。UTF-8可以根据不同的符号自动选择编码的长短。比如英文字母可以只用1个字节就够了。

 


在平时做网页时,网页编码要和数据库编码保持一致,网页的储存编码也要保持一致,字符集也要选择一样的。

转换编码的软件有很多,DreamWeaver就可以转换,windows记事本也可以转换,但是功能有限。推荐一个超棒的软件Nodepad++,看名字就是一个增强的记事本。在转换utf8时尽量用utf8无bom码。

发表评论

电子邮件地址不会被公开。 必填项已用*标注