2024年4月3日发(作者:)
乱码大全(3)──汉字与乱码
乱码大全(3)──汉字与乱码
汉字乱码是一个古老的问题了。自从汉字走进计算机,关于汉字
乱码的问题一天也没有消失过。有关汉字和 HTML 的问题,将在本文
系列的稍后的文章中单独谈到。本文不准备重复 GB_2312-80(国标)、
BIG5、GBK、HZ 的最基本的互相转换的问题,相关的内容可以在
本 BBS Chinese 板询问。 这里以其他角度做一些补充。
由于编码位置上的巧合和汉字平均出现概率上的统计,用 GB 环
境看 BIG5 编码的文字,将有汉字显示成为日语的假名,这个是
在 GB 环境下看到 BIG5 汉字的主要特征。上网时间长一些,就会积
累一些经验,使得你能够一眼区分乱码的类型。比如下面的例子就
是 BIG5:
¨睹絏
い锣更
更
更セゅ
эゅ
琿琌ゅ
常见的汉字乱码还有 HZ 编码,这是一种屏蔽最高位的汉字表示
方法,它是在 GB 和 BIG5 的基础上,用 ~{ 和 ~} 括起汉字编码的部
分。比如:
〃
厩
blueseaれ睲地BBSΘ
癚阶跋
兵ン场骸ì
獺繷
呼翴 腨窽
セ 礛
舧
龟悔拜肈
BBS
セゅ
琌
锣
(2)ぃ
腊 璸衡诀秆∕ㄏノ硁ン筁祘い笿
琌
(1) 锣更
讽
れ睲地 BBS Internet
ぃ竒筁
(3) 锣更度
场だ
す砛
telnet:// WWW砐拜
れ睲地 BBS
ヴ タΑ
贺 BBS ㎝獶坝穨┦借
盢 セゅ┪Ы场ノ贺Αй脓腨窽獶
很多海外中文杂志,如著名的《华夏文摘》( )等都仍然采
用 HZ 编码方法。HZ 编码用额外的控制序列来控制字形的显示,字母
和数字是不被编码的,它们在 ~{ 和 ~} 标记对的外面。这种编码不符
合汉字与文本字符的固定映射规律,处理起来相对麻烦。著名的汉字
平台──南极星 ( NJWIN 1.6, ) 对 HZ 提供了灵活和强大的支持。
海峡两岸的语言经过长期的发展,实际上已经不能形成一一对应
的关系,GB 和 BIG5 的转换也是如此。因此这种转换往往具有不可逆
性,倒不是说一段文字不能在 GB 和 BIG5 之间互相转换,而是说一
旦你转换错了,信息就不能复原。比如你拿一段本来的是 GB 的文字
当作 BIG5, 然后再实施 BIG5 -> GB 的转换,就会损失信息,这时
逆变换将不能完全得到原来的文字。比如 SMTH WWW 发文时,本
是 GB 的,错选了 BIG5 按钮就会如此,反之也类似。
汉字的另一个问题是所谓的“半个汉字”乱码,由于很多英文编
辑软件以字符为单位来处理文本,汉字被删除一半后,剩余的部分会
和相邻的汉字重新组合,使得文本面目全非。因此,除了注意在输入、
删除的时候注意这种问题外,还要注意不要在英文字处理软件中轻易
使用“字符替换”功能,这往往会把一个汉字的后一个字符和相邻汉
字的前一个字符当成一个汉字被替换掉。这种乱码最后往往令人莫名
其妙、找不到原因。
需要说明的是,简体和繁体这两个概念和 GB、BIG5 并没有逻辑
上的联系,GB 的定义是简体字,BIG5 采用的是繁体字,但是为了阅
读的方便,在各自的编码中再做一个内部字形或字体的映射,就形成
了所谓 GB 繁体或 BIG5 简体之类的概念,他们仅仅是一些汉字软件
提供的方便功能,如南极星等。我们常见的 WWW 浏览
器 Microsoft Internet Explorer 4.x 和 Netscape Navigator 4.x 都
已经内置了比较完善的汉字转换功能。加装了语言包的 IE 4.0 还使得
我们脱离汉字平台也可以进行中文处理,并且可以处理大字符集 GBK 。
详见 Win95_win3.x 讨论区中 “让Pwin95更顺手”系列之(11)。
在中文平台上,很多人有不同的见解。本文的主旨与此无关,仅
仅是综合各个方面的因素,我个人向计算机的初学者建议选择中
文 PWindows 95 OSR2 或更高的版本作为最基本的操作环境。中文
之星 ( 、 / ) ,四通利方Richwin( / ) 等由于技术和企业行为的不稳定
性,不适合作为具有依附性的中文平台。但是这些软件中的局部,如
新拼音输入法、支持剪辑板的码转换器等还是具有一定特色 的。如果
有对这个问题感兴趣的讨论,请到 Chinese 板搜索以前的标题继续讨
论。
在 Chinese Community Information Center (CCIC),集中了一
些中文处理的比较完整权威的解决方案,该网点地址是 /software ,
其中包括了各种操作系统、各种汉字编码的处理方案和软件。
除了常见中文平台外,通过 、 、 等共享软件网点,查询 GB、
BIG5、chinese 等关键字可以获得大量的小型应用程序,包括码转换
器。尽管如此,本文还要重点推荐一些用于 DOS 的命令行处理工具,
具有使用方便、可以进行批处理等特点。他们是:
c2t (将 GB 或 BIG5 转化为拼音)
HZ (gb2hz hz2gb zw2hz) (convert gb to hz, hz to gb, zw to
hz respectively)
hc (convert between GB and BIG5)
下载地址为:
/cgi-bin/search?query=
/cgi-bin/search?query=
/cgi-bin/search?query=
其他软件请到 /ftp-pub/software/ 查找。另外,GB 和 BIG5 属
于两个不同组织各自制定的标准体系,对应汉字编码的转换都是通过
表格来转换的,他们之间不存在任何内在的逻辑关系或函数,试图寻
找这种公式的人,请不要白费精力。
几乎所有新生的软件在中国使用都会面临一个汉字兼容的问题,
比如新生的 Java 及其开发环境、动态HTML领域等都从未幸免。 通
过NT的资源存取能力可以实现英文软件的界面/资源汉化,由
于 PWindows 95 对话框的缺省宋体的大小为 9 磅,而英
文 Windows 95 的相应值为 MS Sans Serif 8,所以很多英文软件
在 PWindows 中运行时,界面中的字残缺不全,这些也可以通过资源
的重新编辑予以调整。
但是,软件内核的汉化不是可以轻易实现的。即使是厂家做的汉
化工作也有非常粗糙的痕迹。比如 P-IE 4.0 在安装繁体汉字包后,
PWindows Help 就产生了内码的混乱。这就是个严重的 Bug。有时
只能随意选出一个具体的条目弹出帮助窗口,再反过来调出帮助主题
窗口,偶尔还可以对付使用。或者你就再运行一份 NJwin,
在 Option 中选择 Standard English/Western 。其实这一招在以前
讨论 OutLook Express 看 BIG5 邮件的时候就用过了,也是个乱码的
问题,详 见 Win95_win3.x 讨论区精华区中的“让PWin 95更顺手
(9)─南极星与OutLook Express”。


发布评论