乱码大全(五)
乱码大全(五) 1. GB码和Big5码
GB码是中国大陆、新加坡等国家和地区使用的一种汉字编码方法。Big5码是中国台湾省用的一种汉字编码方法。它们的编码方法是完全不同的两种方法,它们之间的转换只能通过“查表法”来进行。所以说转换的方法很简单,困难的是“表”的生成。很多文章对此都做过介绍,我在此就不详述了。在我的主页上有我写的“汉字转码通V1.0”的源程序,其中有这两个“表”,可以直接使用。
2. HZ码
HZ码是为了使只能传送7bit信息的邮件服务器或网关能传送8bit信息而定义的编码,也是中文常用编码的一种。它和上面介绍的Quoted-Printable码都只能对文本进行编码,即编码时忽略控制字符。
这种编码的也是很好辨认的:有许多“~{”和“~}”,而且总是成对出现。下面是HZ码的一个例子:
~{!6BRBkKc7(4sH+!7~}
~{WwU_~}:mogao~{#,0WTF;F:WU>#(~}telnet://202.112.20.132:23~{#)3IT1!#~}
~{D*8_Hm<~9$WwJR#:~}http://mogao.bentiun.net
Emailto:mogao@371.net
*********************************************
* ~{3}AK<GRdJ2C46<2;4xW_#,3}AKWc<#J2C46<2;AtOB~}*
*********************************************
您可以打开“南极星”看这段文字。
它的算法更简单:读一个字符,如果是8位字符,就把它的最高位清零。把连续的8位字符清零后的输出用“~{”和“~}”括起来。解码时:把是用“~{”和“~}”括起来的部分每个字符的第8位置“1”即可。
上面介绍的三种编码之间的转换是经常遇见的,我写的“汉字转码通V1.0”可以方便的在这三种之间转换,我把它的源程序公开,方便广大网友的学习。
三.其他常用编码
1. Unicode
Unicode应用中最典型的例子是:IE4以上版本对HTML的编码。它可以说是未来Windows下唯一的字符集。但它还很不完善,而且Win95和Win98对它的支持还很有限,甚至它还没有一套完整的标准。不过,微软最新推出的Office2000和马上就要推出的Windows2000将全面支持Unicode。Unicode取代其他编码将会是必然的趋势。不过,在近一两年Unicode并不会占主导地位,就是在占主导地位后,因为操作系统的差异,其他编码也不会立即消亡。它的中文资料可以在Office2000和Windows2000所带的文档中找到,它的官方网站是:http://www.unicode.org/。
2. Binhex
BinHex 编码是 Macintosh 计算机(也就是俗称的“苹果电脑”)上用可打印字符表示/传输二进制文件的一种编码方法。它的主要用途是在电子邮件程序中Attach二进制文件。大部分的电子邮件程序不支持这种格式(Eudora支持),但用WINZIP可以进行解码。它的资料请查阅Macintosh计算机带的相关文档。