一、汉字乱码现象的分类
汉字乱码现象大致可分成四类:网页、文本、文档和文件乱码。第一类是由于港台的繁体中文大五码(BIG5)与大陆简体中文(GB2312)不通用造成的;第二类是Win9X/Win2K系统(菜单、桌面、提示框)显示乱码,这是Win9X/Win2K注册表中有关字体的部分设置不当引起的;第三类是各种应用程序(包括游戏)本来显示中文的地方出现乱码,形成原因比较复杂,有第二类的乱码原因,也可能是软件用到的中文动态链接库被英文动态链接库覆盖造成的;最后一类是邮件乱码。
二、消除汉字乱码
打春针对以上几种乱码现象,我们来分类介绍消除乱码的方法。
(一)、网页、文本和文档文件乱码的消除
网页乱码是浏览器(如IE等)对HTML网页解释时形成的。如果在网页的代码中有形如:〈HTML〉〈HEAD〉〈META CONTENT=“text/html;charset=ISO-8859-1”〉〈/HEAD〉……〈/HTML〉的语句,浏览器在显示此页时,就会出现乱码。因为浏览器会将此页语种辨认为“欧洲语系”。解决的办法是将语种“ISO-8859-1”改为GB2312,如果是繁体网页则改为BIG5。
另一种解决办法是不修改网页代码,事先为浏览器安装多语言支持包(例如在安装IE时要安装多语言
支持包),这样在浏览网页出现乱码时,就可以在浏览器中选择菜单栏下的“查看”/“编码”/“自动选择”/简体中文(GB2312),如为繁体中文则选择“查看”/“编码”/“自动选择”/繁体中文(BIG5),其它语言依此类推选择相应的语系,这样可消除网页乱码现象。
还有一种解决办法是利用多内码显示平台来转换内码。常用多内码显示平台有:
“南极星”:可自动识别GB码、BIG5码,用简体或繁体显示,并能做到同屏显示GB码和BIG5码,对日文、韩文亦能正确显示。下载地址: www.njstar
“四通利方”:支持了包括GB、BIG5、HZ、日韩编码、UNICOD等17种汉字内码,也开始支持预览功能,并且增加了诸如“增删空格”、“插入禁排空格”等小而有用的功能,实在是网友的好帮手。下载地址: www.srsnet
“MagicWin 98”:可真正的同屏显示不同内码,即GB码和BIG5码两者共存、都能正常显示。它支持GB、HZ、BIG5、JIS、EUC、SJIS、KSC、UTF7和UTF8等格式;支持Netscape Communicator 4.X、Internet Explorer 和Office 等软件;支持在多个窗口中同时查看不同内码的文档的超级多内码显示平台。下载地址: /magicwin
网页无乱码保存的方法是:用浏览器打开网页时,在“查看”/“编码”中选择“自动选择”,存盘时保存类型选“web页”,编码选择“UNICOD”,这样保存过的网页再次打开时,在浏览器菜单“
查看”、“编码”中不管选择简体中文(GB2312)、简体中文(HZ)还是UNICODE(UTF-8)或繁体中文(BIG5),最终显示都不会出现乱码。
文本、文档文件乱码,一般是繁体中文显示在简体中文系统下或者相反情况造成的。只要把原本是繁体的内码转换为简体内码(或者相反),就可消除乱码。
Word2000能胜任这类工作,例如要把繁体中文转换为简体中文,方法是:选择要转换内码的文件,在弹出的对话框中(如图1),选择“其它编码”中的“繁体中文(BIG5)”一项,打开此文件时就不会出现乱码。无乱码保存方法:在保存时选择“文件”中的“另存为”,先存为“Word文档,存盘后打开再存为纯文本等其它格式;您也可以用Word2000的“中文简繁转换”工具实现无乱码保存,方法是在菜单栏中选择“工具/语言/中文简繁转换”,内码转换后再保存。
WPS2000也能转换内码,支持GB2312、BIG5、GBK等三种主要的汉字编码,并可在输出RTF、TXT、HTM格式文件时对内码进行转换。
除此之外,消除这类乱码还可用内码转换工具,对BIG5(繁体中文)和GB2312(国标码、简体中文)进行相互转换来实现。常用的内码转换工具有:
“飓风简繁通”:中文自由软件,纯“绿软件”,不用安装,把300多K的压缩包解开到硬盘的任意一个
目录即可使用。软件支持普通文本、剪贴板上内容、磁盘文件的BIG5→GB或GB→BIG5内码转换,速度很快。该软件特有“网站转换”功能:可在几分钟之内全自动的为您的网站生成一个BIG5码的版本。当然,您什么时候从港台地区抓个网站下来,也可以先来个BIG5→GB的转换,然后轻轻松松慢慢欣赏。下载地址:ah
“内码转换大师”:能够以灵活的方式选取大批文件,同时进行转换。选取的文件在转换前后随时可以直接查看其内容。转换是直接在原文件上进行的,省去了选择目标目录、多次拷贝等繁琐的操作。独家具备:对于HTML文件,能够自动转换其汉字字符集定义,使之在浏览器中浏览时自动按照转换后的代码集中显示。目前支持GB2312以及BIG5两种代码集。下载地址:ah
“华语通”:免费软件,支持BIG5<->GB双向转换,支持文本、Web页、RTF等格式,可批量转换。下载地址:ah
“TEXT ROBOT”:支持BIG5<->GB、BIG5→GBK、BIG5→GBK简体、GBK繁体→GBK简体等多内码转换,可将文本格式转换为Web页,能进行批量内码转换。下载地址:ah
“两岸通汉字内码转换器”:免费软件,支持GB<->BIG5、BIG5<->GB的双向转换,可以批量转换,还可直接转换剪贴板内的文本。在转换文件之前,允许你先通过预
览窗口实现预览转换结果。下载地址: www.njstar
(二)、Win9X/Win2K系统乱码的消除 飞得最快的鸟是
这类乱码是由于注册表中关于字体部分配置不正常造成的,即使您用内码翻译软件如四通利方、南极星、Magic Win98、两岸通等处理也不会消除。解决办法是:恢复注册表中关于字体部分设置。
如有一台Win9X/Win2K版本相同且显示正常的机器,则可依下列步骤进行恢复:
1.在正常机器上选择“开始”/“运行”,在对话框中键入“REGEDIT”,打开注册表编辑器;
2.光标定位到“HKEY_LOCAL_MACHINE\ SYSTEM\CURRENT CONTROL SET\CONTROL\ FONTASSOC”,选择“注册表/导出注册表文件”,再选择“分支”,导出该分支注册表信息到文件(如LI.REG)中(如图2);
3.把LI.REG文件Copy到显示乱码的机器上,在显示乱码机器上运行REGEDIT,选择“注册注册表”/“导入注册注册表”,把LI.REG文件导入注册表中。
如没有Win9X/Win2K版本相同且显示正常的机器,则需要您手工恢复字体部分注册表项,按以下步骤:
1.在乱码机器上打开REGEDIT(REGEDIT.EXE在WINDOWS目录下);
2.到“HKEY_LOCAL_MACHINE\SYSTEM\ CURRENT CONTROL SET\CONTROL\FONTASSOC”,正常情况下,会有ASSOCIATED DEFAULTFONTS、ASSOCIATED CHARSET两个文件夹,其正确的内容为:
子目录内容
中文Win98
中文Win98(OEM版)
中文Win2K
AASOCIATED CHARSET
ANSI(00)=“yes”
GB2312(86)=“yes”
DEN(FF)=“yes”
SYMBOL(02)=“no”
ANSI(00)=“yes”
GB2312(86)=“yes”
OEM(FF)=“yes”
SYMBOL(02)=“no”
ANSI(00)=“yes”
OEM(FF)=“yes”
SYMBOL(02)=“no”
ASSOCIATED DEFAULT
FONTS
AssocSystemFont=“f”
FontPackageDecorative=“宋体”
FontPackageDontcare=“宋体”
FontPackageModern=“宋体”
FontPackageRoman=“宋体”
FontPackageScript=“宋体”
三年级上册数学教学计划FontPackageSwiss=“宋体”
同左栏
AssocSystemFont=“f”
FontPackage=“新宋体”
FontPackageDecorative=“新宋体”
FontPackageDontcare=“新宋体”
FontPackageModern=“新宋体”
FontPackageRoman=“新宋体”
FontPackageScript=“新宋体”
FontPackageSwiss=“新宋体”
3.当出现汉字乱码时,上述两个文件夹中内容就会不完整,有的没有ASSOCIATED CHARSET文件夹或其中内容残缺不全;有的ASSOCIATED DEFAULTFONTS下内容残缺。只要用REGEDIT在“HKEY_LOCAL_MACHINE\SYSTEM\CURRENTCONTROLSET\ CONTROL\FONTASSOC”下,根据以上正确内容恢复即可。
(三)、应用程序(包括游戏)乱码的消除
中文软件菜单等显示界面上出现乱码,可能是由于Windows注册表中关于字体设置的信息不正确地改变而造成的,这时候可以用上述第2点介绍的办法去解决。
如果用上法解决不了,那就是因为
软件的中文链接库被英文链接库覆盖而引起的,这种现象经常发生在用微软开发工具例如VB、VC开发的中文软件上,这类软件中,菜单等显示界面上的汉字都是受一个动态链接库(DLL文件)控制,
而软件的这个动态链接库一般安装在Windows的System目录下,如果以后安装了某个英文软件也使用同名的动态链接库,则英文软件的动态链接库就会覆盖WINDOWS\SYSTEM下的中文软件的动态链接库,这样,运行中文软件时就会调用英文的动态链接库,因此出现乱码。解决办法是重新安装中文软件,恢复中文动态链接库即可。
(四)、邮件乱码的消除
1.邮件乱码原因及其排除
邮件乱码的形成原因很多,主要有以下几个方面:
(1)邮件服务器不支持8位(非ASCII码格式)
传输邮件传输机制或邮件编码的不同,可能造成邮件服务器不支持8位(非ASCII码格式)传输而形成邮件乱码。例如直接发送中文或二进制等非ASCII码格式的邮件(如中文双字节文件、图片文件.jpg、可执行文件.exe或压缩文件.zip等二进制文件)时,邮件服务器有可能无法处理,便把信件中每个字符的第8位都过滤掉,从而造成邮件信息的失真或损坏,在收到邮件时就是一堆乱码。
对策:在发送8位格式的文本文件时,必须事先进行编码,将文件转换为7位ASCII码或更少位数的格式,然后才能保证文件的正确传送。收件人收到7位或更少位格式的邮件后,可以再转换为8位的格式,
这样就可避免乱码。
(2)收发端使用的E-mail软件和设置不同
一般E-mail软件的“附件”功能都可以自动对信件先进行编码,然后送出。这样只要收信人使用的E-mail软件(如Outlook、Netscape E-mail等)能区别信件的编码方式,就可以自动将信件解码。然而由于收发件人所用的E-mail软件默认配置不同或收发件人自己定制的一些选项不同,所以在收到编码的信件后,系统不一定能识别出信件所用的编码方法,自然无法自动解码,这样就会出现乱码。
对策:可以用Winzip+IE来解码,方法是:把乱码邮件的内容,拷贝到剪贴板中,然后将其粘贴到记事本中,存为文本文件(例如LI.txt),再将其后缀改为.uue(改为LI.uue),点击此文件,会启动Winzip,然后启动IE,把Winzip中的文件拖到IE窗口中,就会显示邮件原来的内容,而不会看到乱码。
也可以根据邮件中的关键字符判断编码方法,选取合适的解码软件进行解码。
邮件的编码方式主要有:UUENCODE、Base64 encode、QP-encode、BINHEX等。
UUENCODE:这是UNIX环境下使用的编码方式,目前已经很少用,大体格式为:
begin 644 kk.zip M1G)O;2!I;&EN+F)B3T!C(VEE+FYC=’4N961U+G1W(%=E9"!.;W8@(#8@,3(ZM,S
DZ,C4@,3DY-@I296-E:79E9#H@9G)O;2!F;&%B;6%I;"YF;&%B+F9U:FET……
end
特征:乱码前面含有“begin xxx”,后面是编码前的原始文件名(如kk.zip),接着是已经过编码的信件内容(如上述的乱码部分)最后一行为“end”。
解码办法:可用BECKY!EUDORA等E-mail软件,选择编码中相应的选项就可解码,也可以在E-mail软件中保存乱码邮件,存为后缀为“.UUE”格式的文件,然后用Winzip解码展开。解码后就会消除乱码。
MIME/BASE64 encode:该编码方式将3个字节(8位)用4个字节(6位)表示,由于编码后的内容是6位的,因此可避免第8位被截掉,大体格式为:
高一军训口号MIME-Version:1.0
Content-Type:text/plain; charset="us-ascii"
Content-Transfer-Encoding:base64
Status:R
SGmhQbF6pm6hSafapmK69Lj0pFexb6q+sXqsT6Skp OWrSKXzsN3DRLFNrmGhQQ0Kq1+sTqq6vdCx<BR>0LF6tFit07Ddw0ShRw0KD QqtuqX9p2m2RLF6p9qoz6XOIE 1Py3Jvc29mdCuiBJbnRlcm5ldCBN……
特征:乱码前一般有如下几部分“信头”:Content-Type(内容类型)、charset(字符集)和Content-Transfer-Encoding(内容传输乱码方式)。
解码办法:用E-mail软件,选择编码中Base64 选项就可解码,解码后会消除乱码。
QpencodeQP:全称“Quoted-Printable Content-Transfer-Encoding”。因为这种格式邮件的内容都是ASCII字符集中可以打印的字符,所以名称中含有Printable。大体格式为:
=A1A=B1z=A6n=A1I=A7=DA=A6b=BA=F4=B8=F4=A4W
=
=E5==ABH=A5=F3=B0=DD=C3D=B1M=
特征:内容通常有很多等号“=”,因此不需要看“信头”也可以判断是否为QP编码。
解码办法:把邮件中类似A1A=的部分编码全部复制下来,贴到一个新的纯文本文件中,然后在文件头部加入Quoted-Pintable格式的文件头:
Contenet-Type:text/plain;Charset="GB2312"
Content-Transfer-Encoding;Quoted-Pintable
有些文件夹删不掉>oppo手机hd怎么关闭然后以“EML”为后缀保存文件,用资源管理器双击打开文件即可显示正确的内容。如果还有部分汉字乱码,可以用Winzip对存盘后的EML文件进行解压,即可看到正确的内容。
BINHEX:这种编码方式大体格式为:
(This file must be converted with Binhex4.0)
SGmhQbF6pm6hSafapmK69Lj0pFexb6qssTqq6vdCx<BR> 0LF6tFit07Ddw0ShRw0KDQqtuqX9p2m2RLF6p9q
oz6XOIE……
解码办法:用E-mail软件对它解码;也可在E-mail软件中保存乱码邮件,存为后缀为“.HQX”格式的文件,然后用Winzip解码展开。
解码后会消除乱码。
UTIF-7/UTIF-8:它们是UNICODE的两种转换码。
UTIF-7编码方式大体格式为:
+SGmhQbF/6pm6hSafapmK69L/j0pFexb6q+sXqsT6Skp. OWrSKXzsN3DRLFNrmGhQQ0Kq1-sTqq6vdCx<BR>0LF6tFit07Ddw0ShRw0KD QqtuqX9p2m2RLF6p9qoz6XOIE 1Py3Jvc29mdCuiBJbnRlcm5ldCBN……
解码办法:在原E-mail头加入以下信息:
MIME-Version:1.0
Content-Type:text/plain; charset="utf-7
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论