当前位置:文档之家› 乱码形成原因及消除方法大全

乱码形成原因及消除方法大全

乱码形成原因及消除方法大全
乱码形成原因及消除方法大全

乱码形成原因及消除方法大全

2008-01-18 14:08乱码形成原因及消除方法大全当我们浏览网页、打开文档或邮件,运行软件时,经常会看到乱码,通常是由于源文件编码,Windows不

能正确识别造成的的,也可能是其他原因。乱码给我们带来了太多的烦恼,为了帮助大家彻底摆脱乱码

,下面我们就来探讨一下乱码的形成原因及其消除方法。

一、乱码有五种类型

常见的乱码,一般可以分成五种类型:第一类是文本/文档文件乱码,这一般是由于源文件编码,与

Windows使用的编码不通用造成的;第二类是网页乱码,形成原因与第一类乱码类似;第三类是Windows

系统界面乱码,即中文Windows的菜单、桌面、提示框等显示乱码,主要是Windows注册表中有关字体的

部分设置不当引起的;第四类是应用程序的界面乱码,即各种应用程序(包括游戏)本来显示中文的地

方出现乱码,形成原因比较复杂,有第二类的乱码原因,也可能是软件用到的中文链接库,被英文链接

库覆盖造成的;第五类是邮件乱码,形成原因也极其复杂。

二、如何消除应用程序的界面乱码?

目前有些软件发行了Unicode版本,这是一种通用的字符编码标准,涵盖了全球多种语言及古文和专

业符号,这种版本的软件运行在任何系统和语言上都不会乱码,如果是非Unicode编码的程序,就会有乱

码现象。

【形成原因】:原因有三种。如果是由于Windows注册表中关于字体设置的信息不正确造成的,你可

以用下面“如何消除Windows系统界面乱码”介绍的办法去解决;如果用上法解决不了,那就可能是由于

软件的中文链接库,被英文链接库覆盖而引起的。这种现象经常发生在用微软开发工具例如

VB、VC开发

的中文软件上,这类软件中,菜单等显示界面上的汉字都是受一个动态链接库(DLL文件)控制,而软件

的这个动态链接库一般安装在WindowsSystem目录下,如果以后安装了某个英文软件也使用同名的动态链

接库,则英文软件的动态链接库就会覆盖中文链接库,这样,运行中文软件时就会调用英文的动态链接

库,因此出现乱码。解决办法:重新安装中文软件,恢复中文动态链接库即可。

如果以上方法也无济于事,对于Win9X/ME系统,你可以安装使用MagicWin98(下载地址

https://www.doczj.com/doc/888542726.html,/soft/3047.html)、南极星等内码转换软件,转换内码后即可消除乱码;对于

WinXP系统,建议使用微软多语言支持工具MicrosoftAppLocale(下载地址

https://www.doczj.com/doc/888542726.html,/soft/12582.html),利用它为指定程序设置相应的语言区域,这样也可消除乱

码。

三、如何消除文本/文档文件乱码?

【形成原因】:一般是由于文档采用的字符集,系统不支持造成的。例如繁体中文的文档显示在简

体中文系统下,或者相反的情况,就会造成文档显示时乱码。只要你内码转换正确,例如把原本是繁体

的内码,转换为简体内码(或者相反),即可消除乱码。

【解决办法】:有以下四种解决办法:

1、使用Word2003/XP转换内码

Word2003/XP支持众多的语言,可以正确显示非Unicode类型的文本文件,单击“工具”菜单下的“

语言”/设置语言,你可以把默认语言设置成非中文,例如日语,这样Word就可以正确显示

日文了。

当然你也可以用它进行简体中文与繁体中文之间的转换工作,如果文件有乱码,你转换一下即可消

除。例如要把繁体中文转换为简体中文,方法是:选择要转换内码的文件,在弹出的对话框中(如下图

),选择“其他编码”中的“繁体中文(BIG5)”一项,打开此文件时就不会出现乱码。

2、使用Word2003/XP无乱码保存

在Word2003/XP中,当保存时选择“文件”中的“另存为”,先存为“WORD”文档,存盘后打开再存

为纯文本等其他格式;或者在菜单栏中选择“工具/语言/中文简繁转换”,内码转换以后再保存。

3、使用内码转换工具

除此之外,使用内码转换工具也可以消除此类乱码,你只要对BIG5(繁体中文)和GB2312(国标码

、简体中文)进行相互转换即可实现。常用的内码转换工具有:

4、使用WPS2000转换内码

WPS2000也能转换内码,支持GB2312、BIG5、GBK等三种主要的汉字编码,并可在输出RTF、TXT、HTM格式

文件时对内码进行转换。

四、如何消除网页乱码?

【形成原因】:网页乱码是浏览器(IE等)对HTML网页解释时形成的,如果网页制作时编码为A,浏

览器却以编码B显示该网页,就会出现乱码,因此只要你在浏览器中也以编码A显示该网页,就会消除乱

码。

例如网页的代码中有形如:〈HTML〉〈HEAD〉〈META CONTENT=“text/html;charset=ISO-8859-1

”〉〈/HEAD〉的语句,浏览器在显示此页时,就会出现乱码,因为浏览器会将此页语种辨认为“欧洲语

系”。

【解决办法】:有以下四种解决办法:

1、在浏览器中选择“编码”菜单

事先为浏览器安装多语言支持包(例如在安装IE币?安装多语言支持包),这样当浏览网页出现乱码

时,即可手工更改此类网页的编码方式,在浏览器中选择菜单栏下的“查看??“编码”/“自动选择”/

简体中文(GB2312),如为繁体中文则选择“查看”/“编码”/“自动选择”/繁体中文(BIG5),其他

语言依此类推,选择相应的语系,这样便可消除网页乱码现象。

2、修改网页代码

用FrontPage等软件打开出现乱码的网页,修改该网页代码,在以下句子中

〈META CONTENT=“text/html;charset=ISO-8859-1”〉,将语种“ISO-8859-1”改为GB2312,如

果是繁体网页则改为BIG5。

3、无乱码保存网页

用浏览器打开该网页,在“查看”/“编码”中选择“自动选择”,存盘时保存类型选“WEB 页”,

编码选择“UNICODE”,这样保存过的网页再次打开时,在浏览器菜单“查看”/“编码”中不管选择简

体中文(GB2312)、简体中文(HZ)还是UNICODE(UTF-8)或繁体中文(BIG5),最终显示都不会出现

乱码。

4、使用多内码显示软件

使用多内码显示软件来转换内码,也可以消除乱码。常用多内码显示软件有:

五、如何消除Windows系统界面乱码?

【形成原因】:这类乱码是由于Windows注册表中关于字体部分配置不正常造成的,即使您用内码翻

译软件(如南极星、MagicWin98等)处理也不会消除。

【解决办法】:在Windows注册表中,恢复关于字体部分的正确设置。

1、利用显示正常的电脑

假如有一台Windows版本相同、显示正常的电脑可以利用,你可以如下步骤进行恢复:在正常机器上

选择“开始”/“运行”,在对话框中键入“REGEDIT”,打开注册表编辑器;光标定位到

“HKEY_LOCAL_MACHINESYSTEMCURRENT CONTROL SETCONTROLFONTASSOC”,选择“注册表/导出注册表文

件”,选择“分支”,导出该分支注册表信息到文件(如LI.REG)中(如下图);把LI.REG文件COPY到

显示乱码的机器上,在显示乱码机器上运行REGEDIT,选择“注册注册表”/“导入注册注册表”,把

LI.REG文件导入注册表中。

2、在显示乱码的电脑上操作

如果没有显示正常的电脑可以利用,就需要您手工恢复字体部分注册表项,方法有以下两种:

第一种方法:用记事本编辑一个文件,然后保存为扩展名“REG”(文件名随意),再用鼠标右键单击

这个文件,在右键菜单中选择合并,即可完成对注册表的改动。该文本文件的内容如下:

REGEDIT4

[HKEY_LOCAL_MACHINESystemCurtentControlsetcontrolfontassoc]??

[HKEY_LOCAL_MACHINESystemCurtentControlsetcontrolfontassocAssociated DefaultFonts]??

"assocSystemFont"="simsun.ttf"

"FontPackageDontCare"="宋体"

"FontPackageRoman"="宋体"

"FontPackageSwiss"="宋体"

"FontPackageModem"="宋体"

"FontPackageScript"="宋体"

"FontPackageDecorative"="宋体"

[HKEY_LOCAL_MACHINESystemCurtentControlsetcontrolfontassocAssociated CharSet]??

"ANSI(00)"="yes"

"SYMBOL(02)"="no"

"OEM(FF)"="yes"

"GB2312(86)"="yes"

第二种方法:在出现乱码的电脑上,单击菜单“开始”/运行,键入REGEDIT打开注册表;找到

“HKEY_LOCAL_MACHINESYSTEMCURRENT CONTROL SETCONTROLFONTASSOC”,正常情况下会有ASSOCIATED

DEFAULTFONTS、ASSOCIATED CHARSET两个文件夹,这些文件夹中正确的参数如下表所示:

当出现汉字乱码时,上述两个文件夹中内容就会不完整,有的没有ASSOCIATED CHARSET文件夹、或其中

内容残缺不全;有的ASSOCIATED DEFAULTFONTS下内容残缺。只要你打开注册表,在

“HKEY_LOCAL_MACHINESYSTEMCURRENTCONTROLSETCONTROLFONTASSOC”下,根据以上正确内容

恢复即可。

六、如何消除邮件乱码?

邮件乱码的形成原因很多,主要有以下几个方面,针对以下几种形成原因,应该采取不同的乱码消

除方法:

1、收发信双方的语种不同导致的

收发双方使用的操作系统的不同,可以造成乱码。比如发件人使用的是日文的Windows,而收件人使

用的是简体中文的Windows,这样的邮件当然会造成乱码。对于中文

s5X7A6oBCjEwMDAwMTYwMDLIAQGpAgx6YyoiOII-yALh3o4D2QORVnz0LbhhIOADEA&num=1&adurl=h ttp://https://www.doczj.com/doc/888542726.html,/Monitor/Monitor.aspx%3FPlaceID%3D627%26TargetUrl%3Dhttp%253a %252f%https://www.doczj.com/doc/888542726.html,%252fsearch%252fgoogle%252fgoogle_search_index.htm");GgKw ClickStat("电子邮件","https://www.doczj.com/doc/888542726.html,","afs","1000016002");" onmouseout="isShowGg = false;InTextAds_GgLayer="_u7535_u5B50_u90AE_u4EF6"">电子邮件,如果收信方所用的操作系

统是英文环境、而且没有外挂中文系统或未切换为中文(如南极星等)编码方式,也会无法看到中文、

只可见乱码。所有的双字节字符(如中文简/繁体的GB和BIG5码及日文的JIS、EUC和朝鲜文的 KSC码等)

在非本语种操作系统下都会出现乱码;同样在中文简体的GB码环境下,看其他双字节字符时也只能看到

乱码。

【解决办法】:安装多语言支持包或使用多内码显示平台(如南极星等),对收到的邮件,根据其

使用的语种切换到相应的编码方式即可消除乱码。

2、发信服务器不支持8位(非ASCII码格式)传输

邮件传输机制或邮件编码的不同,可能造成邮件服务器不支持8位(非ASCII码格式)传输而形成邮

件乱码。例如直接发送中文或二进制等非ASCII码格式的邮件(如中文双字节文件、图片文件.jpg、可执

行文件.exe或压缩文件.zip等二进制文件)时,邮件服务器有可能无法处理,便把信件中每个字符的第

八位都过滤掉,从而造成邮件信息的失真或损坏,在收到邮件时就是一堆乱码。

【解决办法】:只能由发件人解决。当发送8位格式的文本文件时,必须事先进行编码,将文件转换

为7位ASCII码或更少位数的格式,然后才能保证文件的正确传送。收件人收到7位或更少位格式的邮件后

,可以再转换为8位的格式,这样就可避免乱码。

3、收发端用的EMAIL软件和设置不同

一般EMAIL软件的"附件"功能都可以自动对信件先进行编码,然后送出。这样只要收信人使用的

EMAIL软件(如Outlook XP等)能区别信件的编码方式,即可自动将信件解码。如果收发件人所用的

EMAIL软件默认配置不同、收发件人自己定制的一些选项不同,在收到编码的信件后,系统就未必能识别

出信件所用的编码方法,自然也无法自动解码,这样就会出现乱码。

【解决办法】:如果你用OE收中文邮件,看到的是一篇乱码,可以查一下“查看”-“编码”下,

是否选了“简体中文(GB2312)”,选对了就不会有问题。

此外,你也可以用Winzip IE来解码,方法是:把乱码邮件的内容,拷贝到剪贴板中,然后将其粘贴

到记事本中,存为文本文件(例如LI.txt),再将其后缀改为.uue(改为LI.uue),点击此文件,会启

动Winzip,然后启动IE,把Winzip中的001.txt文件拖到IE窗口中,就会显示邮件原来的内容,而不会看

到乱码。

4、Email软件不能识别邮件的编码方法

邮件的编码方式主要有:Uuencode、Base64 encode、QP-encode、BINHEX等。如果Email 软件不能

识别邮件的编码方法,就会显示邮件时出现乱码。因此,你可以根据邮件中的关键字符判断编码方法,

选取合适的解码软件进行解码。

(1)、QpencodeQP编码

该编码全称“Quoted-Printable Content-Transfer-Encoding”,因为这种格式邮件的内容都是

ASCII字符集中可以打印的字符,所以名称中含有printable。大体格式为:

=A1A=B1z=A6n=A1I=A7=DA=A6b=BA=F4=B8=F4=A4W=B1o......=E5==ABH=A5=F3=B0=DD=C3D=B1M =Aea=A1A...

...

特征:内容通常有很多等号"=",因此不需要看"信头"也可以判断是否为QP编码。

解码办法:把邮件中类似A1A=B1z=A6n…的部分编码全部复制下来,贴到一个新的纯文本文件中,然

后在文件头部加入Quoted-pintable格式的文件头:

Contenet-Type:text/plain;Charset=”GB2312”

Content-Transfer-Encoding;Quoted-pintable

然后以“EML”为后缀保存文件,用资源管理器双击打开文件即可显示正确的内容。如果还有部分汉

字乱码,可以用WINZIP对存盘后的EML文件进行解压,即可看到正确的内容。

(2)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 OWrSKXzs

N3DRLFNrmGhQQ0Kq1+sTqq6vdCx

0LF6tFit07Ddw0ShRw0KDQqtuqX9p2m2RL

F6p9qoz6XOIE1Py3Jvc29mdCuiBJbnRlcm5ldCBN......。

特征:乱码前一般有如下几部分"信头":Content-Type(内容类型)、charset(字符集)及Content-

Transfer-Encoding(内容传输乱码方式)。

解码办法:用EMAIL软件,选择编码中BASE64 选项就可解码,解码后会消除乱码。

(3)、BINHEX编码

这种编码方式大体格式为:

(This file must be converted with Binhex4.0)SGmhQbF6pm6hSafapmK69Lj0pFexb6qss

Tqq6vdCx

0LF6tFit07Ddw0ShRw0KDQqtuqX9p2m2RLF6p9qoz6XOIE…….

解码办法:用EMAIL软件对它解码;也可在EMAIL软件中保存乱码邮件,存为后缀为“.HQX”格式的

文件,然后用WINZIP解码展开。解码后会消除乱码。

(4)、UTIF-7/UTIF-8编码

它们是UNICODE的两种转换码。

(5)、Uuencode编码

这是UNIX环境下使用的编码方式,目前已经很少用,大体格式为:

begin 644 kk.zip M1G)O;2!I;&EN+F)B3T!C(VEE+FYC=‘4N961U+G1W(%=E9"!.;W8@(#8@,3

(ZM,SDZ,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等EMAIL软件,选择编码中相应的选项就可解码;也可以在EMAIL软件

中保存乱码邮件,存为后缀为“.UUE”格式的文件,然后用WINZIP解码展开,解码后就会消除乱码。

七、发信方如何避免产生乱码邮件?

为了避免别人收到乱码,发信方应该采取以下的措施:

1、设定默认自动为7位编码

在邮件客户端软件中的书写(撰写)选项中,设定默认自动为7位编码。因为当你发送 8位格式的文

本文件时,必须事先进行编码,将文件转换为7位ASCII码或更少位数的格式,然后才能保证文件的正确

传送。收件人收到7位或更少位格式的邮件之后,可以再转换为8位的格式,这样就可以阅读了。

2、发送前在签字栏中注明使用的汉字编码

发送中文邮件前,最好在固定的签字栏中注明自己所使用的汉字码标准(例如GB2312、

中文HZ、GBK

等);港澳台及东南亚地区邮件作者在使用BIG5 码撰写完邮件、向内地发送前,要转换成上述三种简体

国标码中的一种形式、并在签字栏中注明。如不转换则可能无法阅读,因为国内用户使用的邮件系统有

很多不支持BIG5码。

3、正确设置EMAIL软件

选择优秀的Email收发软件可以有效地解决邮件乱码。如果使用Outlook 2003/XP,应在软件中把“

简体中文(GB2312)作为默认的邮件使用语言,选择“国际设置”/为接收的所有邮件使用默认的编码。

如果使用英文EMAIL软件,应设置成:文字设定DEFAULT CHARSET:ISO 8859-1(LATIN1);编码方

式ENCODING:QUOTED-PRINTABLE,不可选择7位(因为7位不支持中文);字码页CODE PAGE (可选):

936或HZ-GB-2312,以支持整字识别;邮件格式:MIME;字体:宋体

如果使用其他中文EMAIL软件,应设置成:文字设定DEFAULT CHARSET:简体中文GB2312;编码方式

ENCODING:QUOTED-PRINTABLE;邮件格式:MIME;字体:宋体

4、发送重要信息时先发测试信

发送重要信息时,为了确认是否无须编码即可发送正文,应该先发送测试信。而且还应确定收件人

能否对附件文件进行解码。如果发送已经编码的邮件,则最好添加足够的“信头”信息,以便收件人知

道所需的解码方法。建议对uuencode/UUDeview编码方式用uuencoding作信头,对mpack 编码方式用

base64 encoding作信头。

如果发/收件人之间远隔万里,则传送过程中,第八位将可能被截掉。这时最好先在正文中用中文给

收件人发一封测试信,并了解对方能否正确收到邮件正文。如果第八位被截掉,则收件人将会看到一些

乱码,而不是上述的uu/b64/Qp等格式,而且这种信件几乎不可恢复。

对策:在Netscape、Eudora或Pegasus Mail等你所使用的邮件系统中,选择其首选项或选项配置中

的"Quoted Printalbe"或"MIME encoding

5、尽量利用“附件”功能发送文件

几乎所有的邮件软件,如Netscape、The Bat!、 Becky! 等邮件系统附加这类非标准ASCII码格式

的文件时,附加文件通常可以自动进行“base64”方式编码(仅对附件部分进行编码)。在用"附件"方

式发送邮件之前,无需进行编码;否则适得其反。因为邮件软件能够自动成功解码这类“附加”文件,

因此在发送中文类邮件时应该首选这种方法。

如果无法以附件方式发送文件,则必须在正文中发送中文或二进制文件

八、收信方如何避免邮件显示乱码?

收信方应该首先查找邮件的签字栏或正文中,有无指明对方使用的汉字编码类别;然后在Outlook

XP“视图”菜单下选中“编码”,随后将出现全部的汉字编码,在其中选择邮件所指明的一种。

如果收到的邮件中没有指明所用的汉字编码,则可以顺序单击选择编码,直到邮件正文显示正确为

止。如果你使用的是Netscape,则可在 Option菜单下的Document Encode中选择相应的项目。

九、在跨语种操作系统间收发电子邮件,如何保证不会乱码?

如果对方使用非中文系统,你给他发中文邮件时,他打开你发的中文邮件,就会出现乱

码。解决办

法有两种:

1、用绘图软件书写中文邮件

用画笔等绘图软件书写中文邮件,然后把中文邮件以GIF图形格式保存,最后压缩之、作为邮件附件

发送。

运行绘图软件,在图片中输入文字,用GIF格式保存,将属性置为黑白模式(以减少图片体积),然

后用WINZIP把它压缩成ZIP格式,作为附件在邮件中发送,这样不管对方在何语言平台下,都不会出现乱

码,收信人不必去下载PDF文件阅读器,阅读起来也很方便。

2、使用专门的工具转换和阅读

EMAIL AID之类的工具可以把中文邮件转换为AID格式文件,你把该格式文件发给对方,他再用EMAIL

AID打开观看即可。

EMAIL AID(UCWIN GOLD 1.0附带的)可以把文本文件转换为AID格式文件,大小只比原TXT文件增加

几K。写好中文邮件后,用文本格式存盘,然后你运行EMAIL AID,以AID格式保存,最后你把AID文件连

同EMAIL AID软件一起作为附件插在信中。对方收到信后,只需运行EMAIL AID,打开AID 格式文件即可看

到汉字,不管对方在何种语言平台下,都不会出现乱码。

中文乱码解决大全

SSH开发过程中的中文问题汇总 作者:Rainisic来源:博客园发布时间:2012-01-11 14:26 阅读:50 次原文链接[收藏] 在使用SSH开发的过程中,我们经常会因为各种各样的中文乱码问题而苦恼。之前开发的过程中遇到过一些,但是都没有记录下来,这次,我就遇到的中文问题进行一个汇总,希望能够对大家有所帮助。 1. 平台环境参数 操作系统:Windows 7 旗舰版64位 JDK版本:JDK 1.6 / JDK 1.7 (此处由于JDK 7 发布不久,所以对两个版本进行测试) 开发环境:Eclipse Java EE Indigo 网站容器:Tomcat 7.0 开发框架: Struts 2.3.1.1-GA Spring 3.1.0-release Hibernate 4.0.0-Final / Hibernate 3.6.9-Final (此处由于Hibernate 4 final 刚刚发布不久,所以对两个版本进行测试) 2. 中文问题汇总 (1)HTML中未指定文件编码 问题描述:在HTML中未指定文件编码,在部分浏览器中将会出现中文乱码。 解决方案:在HTML的head标签中指定文档编码,代码如下(请根据DOCTYPE选择): // HTML 4.01 Transitional

// HTML 5 (2)表单提交使用GET方法 问题描述:在HTML form 中提交表单的时候使用method="get"导致中文乱码。 解决方案:form表单的method设置为post,代码如下:

(3)JSP文件中未指定文档编码类型 问题描述:在JSP文件中未指定JSP文档编码,在浏览器中会出现中文乱码。 解决方案:在JSP文件首部增加指定文档编码的代码,代码如下: <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> (4)文件编码不正确 问题描述:由于Java文件、JSP文件等文件编码不正确,导致中文乱码。 解决方案:设置文件的默认编码为UTF-8(如果需要使用其他编码,请确保上述两个编码格式与文件编码相同) 设置方法: 当前文件编码修改:该文件右键→Properties→Resource,右侧Text file encoding→Other →UTF-8 默认文件编码修改: 0. Windows→Preferences 打开Eclipse配置选项窗口。 1. General→Content Type,右侧Text 下面所需要的文件类型Default encoding设置为UTF-8

JSP中文乱码的产生原因及解决方案

JSP中文乱码的产生原因及解决方案 在JSP的开发过程中,经常出现中文乱码的问题,可能一直困扰着大家,现在把JSP 开发中遇到的中文乱码的问题及解决办法写出来供大家参考。首先需要了解一下Java中文问题的由来: Java的内核和class文件是基于unicode的,这使Java程序具有良好的跨平台性,但也带来了一些中文乱码问题的麻烦。原因主要有两方面,Java和JSP文件本身编译时产生的乱码问题和Java程序于其他媒介交互产生的乱码问题。首先Java(包括JSP)源文件中很可能包含有中文,而Java和JSP源文件的保存方式是基于字节流的,如果Java和JSP编译成class文件过程中,使用的编码方式与源文件的编码不一致,就会出现乱码。基于这种乱码,建议在Java文件中尽量不要写中文(注释部分不参与编译,写中文没关系),如果必须写的话,尽量手动带参数-ecoding GBK或-ecoding gb2312或-ecoding UTF-8编译;对于JSP,在文件头加上<%@ page contentType="text/html;charset=GBK"%>或 <%@ page contentType="text/html;charset=gb2312"%>基本上就能解决这类乱码问题。 下面是一些常见中文乱码问题的解决方法(下面例子中ecoding采用的是gb2312,也可设为ecoding GBK或ecoding UTF-8): 一、 JSP页面乱码 这种乱码问题比较简单,一般是页面编码不一致导致的乱码,一般新手容易出现这样的问题,具体分以下两种情况: 未指定使用字符集编码 下面的显示页面(display.jsp)就出现乱码: JSP的中文处理 <%out.print("JSP的中文处理");%>

乱码形成原因及消除方法大全 八

乱码形成原因及消除方法大全八 乱码形成原因及消除方法大全.txt生活,是用来经营的,而不是用来计较的。感情,是用来维系的,而不是用来考验的。爱人,是用来疼爱的,而不是用来伤害的。金钱,是用来享受的,而不是用来衡量的。谎言,是用来击破的,而不是用来装饰的。信任,是用来沉淀的,而不是用来挑战的。乱码形成原因及消除方法大全 2008-01-18 14:08乱码形成原因及消除方法大全当我们浏览网页、打开文档或邮件,运行软件时,经常会看到乱码,通常是由于源文件编码,Windows 不 能正确识别造成的的,也可能是其他原因。乱码给我们带来了太多的烦恼,为了帮助大家彻底摆脱乱码 ,下面我们就来探讨一下乱码的形成原因及其消除方法。 一、乱码有五种类型 常见的乱码,一般可以分成五种类型:第一类是文本/文档文件乱码,这一般是由于源文件编码,与

Windows使用的编码不通用造成的;第二类是网页乱码,形成原因与第一类乱码类似;第三类是Windows 系统界面乱码,即中文Windows的菜单、桌面、提示框等显示乱码,主要是Windows注册表中有关字体的 部分设置不当引起的;第四类是应用程序的界面乱码,即各种应用程序(包括游戏)本来显示中文的地 方出现乱码,形成原因比较复杂,有第二类的乱码原因,也可能是软件用到的中文链接库,被英文链接 库覆盖造成的;第五类是邮件乱码,形成原因也极其复杂。 二、如何消除应用程序的界面乱码? 目前有些软件发行了Unicode版本,这是一种通用的字符编码标准,涵盖了全球多种语言及古文和专 业符号,这种版本的软件运行在任何系统和语言上都不会乱码,如果是非Unicode编码的程序,就会有乱

cmd窗口显示中文乱码及无法输入中文解决方法

cmd窗口显示中文乱码及无法输入中文解决方法 (2009-05-09 19:13:12) 分类:软件应用 标签: it 中文显示为乱码 临时解决方案: 在 CMD 中运行 chcp 936。 永久解决方案: 打开不正常的 CMD 或命令提示符窗口后,单击窗口左上角的图标,选择弹出的菜单中的“默认值”,打开如下图的对话框。单击第一个“选项”选项卡,将默认的代码页改为 936 后重启 CMD。 附:

如果改了以后无法生效,窗口的“默认值”和“属性”没变,进入注册表,在 HKEY_CURRENT_USER 下找到 console 项下的 Console 以及其下可能有 的 %SystemRoot%_system32_cmd.exe(这个 %SystemRoot%_system32_cmd.exe 下有的 codepage 话就改,如果没有就不管它),codepage值改为 936(十进制)或 3a8(十六进制)。 936(十进制)/3a8(十六进制) 是简体中文的,如是其它语言,要改为对应的代码。然后再执行第二段中所述的操作。 还可能和 CMD 的默认值的“字体”设置有关。 在 CMD 的“默认值”和“属性”的“字体”选项卡中中确认设定的字体是可以显示中文字符的字体,并且确定字体文件没有被破坏。字体最好设置为默认的点阵字体。 还是不行,干脆把%SystemRoot%_system32_cmd.exe内容备份下,然后清空它。或是把以下内容保存为REG文件导入试试。 Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe] "QuickEdit"=dword:00000800 "CodePage"=dword:000003a8 "WindowSize"=dword:001e005a "FontSize"=dword:000c0008 "FontFamily"=dword:00000030 "FontWeight"=dword:00000190 "FaceName"="Terminal" ============================================================= 无法输入中文 确认以下事项: 1.CMD 里中文字符可以正常显示(上文). 2.注册表中 HKEY_CURRENT_USER\Console 及 HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe] 下LoadConIme 的值为 1. 3.conime.exe 这个文件存在,没有受到破坏,并且正常运行.

win7系统常见的乱码问题解决方法

win7系统常见的乱码问题解决方法 win7系统乱码的问题,经常会碰到一些软件是简体中文的,可是在win7系统中却出来乱码的问题?400pc小编教你破解是哪些原因造成win7系统乱码。 近期,居住香港的姐姐也安装了Windows 7,不过,令她烦恼的是使用一些简体中文的软件出现了乱码。而这些软件都无法找到繁体版本,比如:迅雷,即使勉强安装好也无法轻松使用。难道香港用户就无法使用这些简体软件了吗?其实,Windows 7自身已经提供了完善的解决方案了。 一、Windows 7乱码问题来龙去脉 旅居香港的姐姐安装的是我提供的简体中文版本的Windows 7旗舰版,按理是可以顺利兼容简体软件的,然而问题就出在姐姐对默认的安装设置进行了修改。因为姐姐经常使用繁体软件,她将系统的“区域和语言”的“格式”、“位置”、“默认输入语言”、“非Unicode程序的语言”都设置成了更加顺手的香港繁体。 我们知道Unicode也可称为统一码,为每种语言的每个字符设置了统一且唯一的二进制编码,以满足跨语言、跨平台进行文本转换处理的要求,然而,还是有不少程序并不支持该编码,这时就有必要设置非Unicode程序使用的语言编码了。像迅雷这样的软件就支持简体中文编码,而不支持Unicode,当设置了香港繁体的非Unicode 就会出现乱码,同理,将非Unicode设置为简体后,很多不支持Unicode的繁体软件也会出现乱码。这个乱码问题难道是两难的吗?其实,我们使用Windows 7的语言包补丁安装功能就可以顺利解决。 二、巧妙解决Windows 7乱码 1.安装合适的语言包 首先,要能安装多种语言包的Windows 7只能是旗舰版或者企业版,接着我们就来解决这个问题吧。我们点击“开始-Windows Update”打开自动更新窗口。 在窗口中点击“34个可选更新”链接,在可以下载安装的语言包列表中选择“繁体中文语言包”,确定即可。 回到刚才的窗口点击“安装更新”按钮开始下载安装。 安装完语言包补丁需要重启。重启的过程需要配置补丁。

Android读取中文文件乱码解决方法

最近在做个MP3播放器,出现中文乱码问题,在网上找了很多解决办法,我整理了出现乱码的点和解决方案,拿出来和大家共享一下 1.读取中文文件乱码解决方法 package com.apj.conv; import java.io.BufferedInputStream; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStreamReader; import android.app.Activity; import android.os.Bundle; import android.os.Environment; import android.widget.TextView; public class ConverActivity extends Activity { private TextV iew textview ; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(https://www.doczj.com/doc/888542726.html,yout.main); textview = (TextView) findView ById(R.id.lrctext); System.out.println("==============convertCodeAndGetText begin============== ") ; ///获得SDCard中文件的路径 String path = Environment.getExternalStorageDirectory().getAbsolutePath()+ File.separator ; String tochinese = convertCodeAndGetText(path+"a.txt"); System.out.println(tochinese); System.out.println("==============cconvertCodeAndGetText end=============="); textview.setText(tochinese); }

关于Linux下中文乱码的完整解决方案

关于Linux下中文显示为乱码的完整解决方案Linux,作为一款免费的操作系统,相对于高额费用的Windows系列操作系统,有着更强的优势,所以,许多人也都开始学习Linux操作系统的知识。但是,由于Windows 系列操作系统还是当今社会的主流,所以,人们少不了在Windows和Linux系统之间进行文件的传输。 但是一个新问题出现了,那就是中文乱码问题,这个问题困扰着无数的Linux用户,尤其是Linux的初学者,对于这个问题相当的头疼。 主要问题如下: 1、ssh中,中文显示为乱码:在Wind ows 系统下,用ssh远程连接Linux系统,对于在Linux下显示正常的中文,在ssh中却显示为完全无法识别的乱码字符。 2、中文传输乱码:把Wind ows中的中文文件传输到Linux操作系统中,原本在Wind ows下显示正常的文件,到了Linux系统下,成了无法识别的乱码。 分析其原因,是因为Linux和Wind ows系统下,所用户的字符集不同,Linux系统使用的是Unicod e字符集,而Wind ows使用的是GB字符集。所以,在网上出现了两种解决方案: 方法一:使用Putty代替secure shell client(ssh):在Putty终端设置中,修改wind ow-〉Translation中的Received data assumed to be in which character set值为Linux 中的字符集UTF-8,再连接Linux,

发现这时,Linux中的中文可以正常显示了。 但是一个新问题出现了,把Wind ows中的文件上传了Linux 中,原本在Wind ows下显示正常的中文文件,现在却成了乱码。 所以,这个方法无法彻底解决乱码问题。 方法二:修改Linux默认字符集,把Linux的默认字符集修改为和Wind ows中的字符集一致的GB18030或GB2312,重启Linux系统后,再用ssh终端连接,这时,修改字符集后的中文文件都已经能正常显示,而且,从Wind ows中新上传的中文文件也能正常显示了。这个方法不错。 但是,Linux系统在安装时,产生的中文字符(中文文件夹名、中文文件名、中文文件)在新的字符集下,却又全都显示成了乱码。 有什么方法可以彻底解决乱码问题,使在Linux系统下,所有的中文字符都可以正常显示呢? 本人综合了网上的各种解决方案,经过多次实验,终于找到了一个比较完整的解决方案,步骤如下: 第一步:用英文安装Linux系统:在安装Linux系统时,采用默认的英文安装,而不要使用中文。 第二步:修改字符集:在Linux系统安装成功以后,修改系统的默认字符集,操作如下: 在Fedora Linux系统中,编辑/etc/sysconfig/i18n文件,修改LANG 值为zh_CN.GB2312或zh_CN.GB18030,保存退出。 在OpenSuSE Linux系统中,编辑/etc/sysconfig/language文件,

网页中文乱码完美解决方案

网页中文乱码 既然后面charset设置为gb2312,那么你打开这个网页,然后另存,保存的时候记得把编码改成gb2312,不然的话charset就会误导浏览器,这样就会乱码了。 2.php编网页出现乱码,我把编码改成utf-8 前台显示正常了,但是有东西输入到数据库再提取出来还是不正常 3.apache+php+mysql 为何会出现乱码 我们在做PHP项目的时候,经常会遇到中文乱码的问题,有时候编码问题还导致MYSQL的报错。中文乱码总共有三个原因 1:APACHE服务器设置导致乱码 2:PHP,或者HTML页面编码导致中文乱码 3:MYSQL数据库的表以及字段编码导致中文乱码 我们分别从这三个部分来探究PHP程序设计中的编码问题 在这之前我们要了解一些基本理论: 1、文件编码 每个文件在保存的时候都可以选择以什么编码保存,例如用WINDOWS的记事本创建一个文件可以选择ANSI 以及UTF8等等编码。我们选择了什么编码该文件就以这种编码方式保存在硬盘上。读取该文件数据的时候也会指定一种编码来打开,如果指定的编码与文件保存的时候的编码不一样的话就会出现乱码 2、HTML的编码 在网页头部一般有这样一个 区域 这个的意思是让客户端知道,接下来输出的是html代码(text/html),并且以下输出的内容都将是utf-8编码的。如果我们用记事本创建一个HTML文件该文件包含 但是在保存的时候却以ANSI编码格式保存,那么我们用浏览器打开这个文件时,浏览器看见META 行的UTF8编码设置后就将文件以UTF8格式输出,而文件本来是ANSI编码,这样便出现了中文乱码。 一:APACHE服务器编码 在APACHE配置文件中有一行是编码的设置默认的是AddDefaultCharset ISO-8859-1,大部分人认为应该将这句改为AddDefaultCharset UTF-8 。而蜗牛认为这是误人子弟。这项配置是告诉APACHE服务器选用什么样的编码来输出WEB页面(这样做会忽略,HTML页面中的页面编码的设置EG:),如果我们建立一个GB2312的页面就会出现中文乱码。所以最好的方法是将AddDefaultCharset ISO-8859-1这一项注释掉#AddDefaultCharset 二:PHP编码问题 php最终生成的是文本文件,而他要从数据库中取出文本数据,还要把文本数据写到数据库中。由于MYSQL并不知道PHP发送给他的是什么编码的数据,所以需要客户端PHP告诉他存取的是什么编码的数据。然后MYSQL会自动将PHP传送来的数据转换成目标编码格式的

CAD乱码解决

在AutoCAD里中文显示为乱码,一般是有2个原因:一是没有定义中文字体,这会在使用单行文字命令或修改标注添加中文时候显示一连串“?”;另外一个原因就是在打开别人图纸的时候,如果别人使用了一种你的系统内没有安装的字体,而你在AutoCAD提示你选择适配字体时又直接跳过,那么所有没有正确适配的字体都会显示成乱码,最典型的是日文。 对于第一种情况,解决起来很简单,只需要正确定义中文字体即可,推荐使用符合国标的GB工程字体。具体设置如下: 选择【格式】|【文字样式】菜单项,弹出【文字样式】对话框,在【字体】选项中选择【使用大字体】复选框,此时【大字体】下拉列表框由虚变实,在【SHX字体】下拉列表框中选择gbeitc.shx或者gbenor.shx,在【大字体】下拉列表框中选择gbcbig.shx,其他设置不变,单击【应用】按钮后再单击【取消】按钮,完成中文字体设置。其中中文长仿宋字体是gbcbig.shx,英文及数字使用斜体是gb eitc.shx或正体是gbenor.shx。 对于第二种情况,一个简便的解决办法是当提示你选择适配字体时候,对于每一种没有的字体都选择gbcbig.shx,一般都能解决问题。如果问题依旧,可以如上述方法调出【文字样式】对话框,在【样式名】下拉列表框中选择每一种文字样式,都把它们按照上面的设置修改过来,这样大部分的乱码问题都可以解决。 轻松解决AutoCAD文字的乱码问题

2006-01-03 10:54作者:水瓶原创出处:天极设计在线责任编辑:Shiny 经常接触CAD图纸的朋友们会发现,下载到的图纸打开以后经常出现文字的乱码问题,有的时候文字全部显示为问号,给我们的工作带来了不少麻烦。怎么解决这样的问题呢? 看下面这个图,这是在AUTOCAD中的一行文字,不要误会哦,这可不是日语,而是显示错误的乱码。 如果只是想知道某一行文字的内容的话,双击编辑文字或者在选中文字后按“Ctrl+1”打开对象特性管理器,都可以达到查看文字内容的目的。 其实出现这样的问题的原因是因为在不同的电脑上做图时使用了不同的字体,如果在制图的时候使用通用的字体就很容易避免这种问题的发生,可是问题已经发生了总要想个解决的办法让字体正常的显示出来吧: 打开一个可以正常显示文字的DWG文件,复制一行能够正常显示的文字到有乱码问题的图纸之中:

AJAX提交中文乱码解决

以下是我的AJAX中文乱码的解决方案: 客户端对url进行两次转码:(str可能是中文) Js代码 1.... 2.var url = 'policy.do?method=searchSuggest&word=' + str+"&now="+ new Date().getTime(); 3.url = encodeURI(url); 4.url = encodeURI(url); 5.... 服务器段对参数值进行解码: Java代码 1.... 2.String word = request.getParameter("word"); 3.word = https://www.doczj.com/doc/888542726.html,.URLDecoder.decode(word,"UTF-8"); 还可以利用js进行HEX加密,java解密. 怎么不能删除留言啊,一不小心点错了,又要被扣分.. java_mike 写道 以下是我的AJAX中文乱码的解决方案: 客户端对url进行两次转码:(str可能是中文) Js代码 1.... 2.var url = 'policy.do?method=searchSuggest&word=' + str+"&now="+ new Date().getTime(); 3.url = encodeURI(url); 4.url = encodeURI(url); 5....

服务器段对参数值进行解码: Java代码 1.... 2.String word = request.getParameter("word"); 3.word = https://www.doczj.com/doc/888542726.html,.URLDecoder.decode(word,"UTF-8"); 4.... java_mike 写道 我也不是很清楚,一次不行! request.getParameter做的怪。。。 要是使用struts2的自动类型转换就不用encodeURI两次了 java_mike 写道 以下是我的AJAX中文乱码的解决方案: 客户端对url进行两次转码:(str可能是中文) Js代码 1.... 2.var url = 'policy.do?method=searchSuggest&word=' + str+"&now="+ new Date().getTime(); 3.url = encodeURI(url); 4.url = encodeURI(url); 5.... 服务器段对参数值进行解码: Java代码 1.... 2.String word = request.getParameter("word"); 3.word = https://www.doczj.com/doc/888542726.html,.URLDecoder.decode(word,"UTF-8"); 4....

word打开是乱码的5种方法

内容提要:本文介绍word打开是乱码的五种解决方法,比如删除格式、转换格式、打开并修复、提取文字等等来解决Word乱码问题。 文件打开后发现里面的内容是乱码,这种情况一般是有下面4种原因导致的。 1 没有使用正确的软件来打开该文件。 2 文件加密后但没有用正确的方法解密。 3 给文件添加了加密属性,但系统EFS加密出现问题导致文件损坏。 4 其他原因导致文件损坏。 时不时都会遇到群里朋友问到word打开是乱码,该如何处理。word打开是乱码有可能是文件格式出现问题,也有可能遭病毒,或者是文档被破坏等等原因。 word打开是乱码解决方法一:打开并修复 单击菜单“文件”——“打开”,选择要恢复的文件,单击“打开”按钮旁边的箭头,然后单击“打开并修复”。 word打开是乱码解决方法二:提取文字 单击菜单“工具”——“选项”——“常规”选项卡,勾选“打开时确认转换”复选框,“确定”。按ctrl+O,弹出打开对话框,在“文件类型”框中,单击“从任意文件中恢复文本”,和正常一样打开文档。 word打开是乱码解决方法三:转换文档格式 将word打开是乱码的文件转换为另一种格式,然后再将其转换回Word 文档格式。打开受损文档,另存为,“保存类型”为:RTF 格式(*.rtf)。 当转换成rtf格式后Word打开仍然是乱码,可以将文件再次转换为纯文本格式(*.txt),再转换回.doc格式。不过,转为txt文件,所有的图片和表格等信息会丢失。 word打开是乱码解决方法四:删除格式信息法

删除格式信息有时也能解决Word乱码问题。打开乱码文档,单击菜单“工具——选项——编辑”标签,不勾选“使用智能段落选择范围”,然后将这些内容粘贴复制到新的word中。 word打开是乱码解决方法五:查毒和禁止自动宏的运行 查看电脑和文档是否遭病毒入侵。? 如果某个Word文档中包含有错误的自动宏代码,当试图打开该文档时,其中的自动宏由于错误不能正常运行,从而引发不能打开文档的错误。在“Windows资源管理器”中,按Shift键,再双击该Word文档,可阻止自动宏的运行,从而能够打开文档。

url中文乱码解决大全

使用tomcat 时,相信大家都回遇到中文乱码的问题,具体表现为通过表单取得的中文数据为乱码。 一、初级解决方法 通过一番检索后,许多人采用了如下办法,首先对取得字符串按照 iso8859-1 进行解码转换,然后再按照gb2312 进行编码,最后得到正确的内容。示例代码如下: http://xxx.do?ptname='我是中国人' String strPtname = request.getParameter("ptname"); strPtname = new String(strPtname.getBytes("ISO-8859-1"), "UTF-8"); String para = new String( request.getParameter("para").getBytes("iso8859-1"), "gb2312"); 具体的原因是因为美国人在写tomcat 时默认使用iso8859-1 进行编码造成的。 然而,在我们的servlet 和jsp 页面中有大量的参数需要进行传递,这样转换的话会带来大量的转换代码,非常不便。 二、入门级解决方法 后来,大家开始写一个过滤器,在取得客户端传过来的参数之前,通过过滤器首先将取得的参数编码设定为gb2312 ,然后就可以直接使用getParameter 取得正确的参数了。这个过滤器在tomcat 的示例代码 jsp-examples 中有详细的使用示例, 其中过滤器在web.xml 中的设定如下,示例中使用的是日文的编码,我们只要修改为gb2312 即可 1.Set Character Encoding 2.filters.SetCharacterEncodingFilter 3. 4.encoding 5.EUC_JP 6. 7.

关于URL传递中文参数出现乱码的解决方案

关于URL传递中文参数出现乱码的解决方案刚毕业参加工作,目前在学习一个管理系统,包括了对数据库信息的各种操作、显示功能。 1. 在实现了数据库信息在JSP页面中的显示后,需要进行某条记录的修改,需要打开一个悬浮窗口,中value用来显示获取的信息,作为初始值。继而输入修改的信息,并把信息更改到数据库当中。 如图所示: 在xiugai.jsp文件中,我们需要在中添加这样一段程序,才能解码中文参数。

并在table表单中如此编写 就能正常显示。 此中最为关键的就是 和, 这就是所谓的编码和解码过程。 至于为什么在JS中要进行2次编码,我还没有弄明白。但经验证明这是对的。 2.当表单页有中文输入时,它所action到的jsp文件在通过 String X=request.getParameter(“X”)时,获得的X的中文为乱码显示。 就需要 X=new String(X.getBytes(“iso-8859-1”),”UTF-8”); 这个程序就能解决这个乱码问题。当然上面书写为UTF-8,是因为我习惯把JSP页面编码方式设为UTF-8。习惯gb2312的朋友也可把它设为gb2312。 以上是我近期学习所取得的一些经验,还有许多不足。欢迎志同道合者、高手加以改进,欢迎与我交流,可在我的百度空间留言,是我改

打印出现的情况(解决打印乱码问题)

Epson LQ-690K Q: 打印机为何打印乱码?打印乱码后如何解决? A: 文档编号:310031 一、问题描述 其实不光是针式打印机,喷墨、激光打印机都会出现打印内容为乱码的现象,虽然打印机类型和工作原理不同,但是产生这个问题的原因大致是相同的。本文以LQ630K, LQ1600K3+,LQ670K+T三款针式打印机为例解释乱码现象产生的原因和解决方法。 二、问题原因,现象,和解决方法 纵观Epson系列针式打印机,打印乱码主要有5个原因,按其发生频率所占的比例由大到小,分述如下: 1、电脑操作系统问题,打印机缓冲区溢出问题。 很多人以为电脑是不会出错的,其实我们的操作系统并不像想像的那么稳定。我们向电脑提交的打印作业有时会在打印管理程序中被堆积起来。电脑处理不过来,会向打印机发送一些混乱的数据,在Window 2000和Windows XP系统中有时甚至重启电脑或者打印机后问题依然存在。 典型表现是:打印机突然打印几行乱码,然后就不工作了。 解决方法:win98下比较简单,win2000和winXP有时会复杂一些。 发送打印作业后,在电脑右下角会冒出来一个打印机的小图标,双击一下,“打印管理器”就出现了。我们可以在这个管理器中控制打印作业的暂停、重启或者清除。 在win98操作系统中,一般只需要取消所有打印作业,重启打印机一般都可以解决。如图(1): 图(1):在win98系统中删除打印作业 我们有时会发现在Windows 2000和Windows XP操作系统下,有时问题会很“固执”。这时候就需要我们多做一些工作。 首先也应该象在Windows 98下那样,尝试这取消堆积的打印作业,或者再重新启动一下打印机。如果情况不是很严重,可以解决问题。 如图(2):

Flash中出现中文乱码的解决办法

Flash中出现中文乱码的解决办法 在编辑flash文件中加载了非Unicode 编码的外部txt文本文件时,有些中文就不能正常显示。 解决办法: 用鼠标右键单击舞台上的元件,从弹出的快捷菜单中选择“动作”选项,打开动作脚本编辑面板,键入下面脚本https://www.doczj.com/doc/888542726.html,eCodepage = true;脚本解释:显示中文字符的语句,使外部文本文件中的中文字符能正常显示。否则只能显示英文字符,中文字符为乱码。例子:on (release) {loadVariablesNum("chem.txt", 0);https://www.doczj.com/doc/888542726.html,eCodepage = true;} 说明: 对于作为外部文件包含或加载的文本(使用#include 命令,loadVariables() 或getURL 动作,或LoadVars 或XML 对象),保存这些文本文件时必须使用Unicode 对其进行编码,这样Flash Player 才能将其识别为Unicode。若要使用Unicode 对外部文件进行编码,请在支持Unicode 的应用程序(例如,Windows 2000 上的“记事本”)中保存这些文件。 如果包含或加载了非Unicode 编码的外部文本文件,则应将https://www.doczj.com/doc/888542726.html,eCodepage 设置为true。在加载数据的SWF 文件的第一帧中,在最前面添加以下代码(第一行代码): https://www.doczj.com/doc/888542726.html,eCodepage = true; 如果有这一行代码,Flash Player 将使用运行Flash Player 的操作系统

的传统代码页来解释外部文本。对于英文Windows 操作系统,该代码页通常为CP1252;对于日文操作系统,该代码页通常为Shift-JIS。如果将https://www.doczj.com/doc/888542726.html,eCodepage 设置为true,Flash Player 6 和更高版本处理文本的方式与Flash Player 5 相同。(Flash Player 5 在处理文本时,将所有文本都视为按运行播放器的操作系统的传统代码页编码的文本。) 如果将https://www.doczj.com/doc/888542726.html,eCodepage 设置为true,应注意您的外部文本文件中使用的字符必须包含在运行播放器的操作系统的传统代码页中,这样才能显示该文本。例如,如果您加载了一个包含中文字符的外部文本文件,这些字符在使用CP1252 代码页的系统上将无法显示,因为该代码页不包含中文字符。 若要确保所有平台上的用户都能查看您的SWF 文件中使用的外部文本文件,应使用Unicode 对所有外部文本文件进行编码,并将https://www.doczj.com/doc/888542726.html,eCodepage 设置保留为其默认设置false。这样,Flash Player 6 和更高版本将按Unicode 解释文本。

打印机打印出乱码的原因与解决方法

打印机打印出乱码的原因与解决方法 打印机打印乱码。原因很复杂,简单判别方法可以把你的打印机拿到别的可正常打印的电脑上试一下看是否也是乱码,如果打印正常,则证明故障和主机有关,或把一台在别的电脑上使用正常的打印机连到你的电脑上试试看,如果正常则说明故障和你的打印机有关。出现乱码后可以先软后硬的方式排查: 软件解决方法 1.在BIOS设置里更改打印机并行口模式(如果你是使用传统的打印线而不是USB打印线的话),进入BIOS,“Integrated peripheral→parallel port mode”,有以下四种模式“SPP”(标准并行口)、“EPP”(增强并行口)、“ECP”(扩展并行口),“ECP+EPP”,如果你的打印机型号较老,则建议设为SPP模式,而目前主流的打印机则建议设为ECP+EPP模式(当然你也可以几种模式都试一下)。 2.针式打印机,包括普通针式打印机和票据针式打印机有LQ仿真和自身打印两种模式,如果使用的模式不正确,打印也有可能出现乱码的现象(在打印机属性里可以更改打印模式)。 3.打印机驱动安装不正确或损坏也有可能导致打印乱码,重新安装最新的打印机驱动,驱动安装完成后可执行打印测试页以测试打印机是否正常。 4.用于打印的字体未安装或已经损坏也会出现打印乱码的

情况。 5.软件冲突,使用盗版软件,会造成驱动不正常,导致打印乱码,即使是某些正版软件,由于要求在打印口上安装加密狗,也会导致打印异常。 6.病毒导致打印异常,有时由于病毒的存在也会造成打印乱码,使用防病毒软件进行查杀。 7.系统文件损坏或丢失造成打印异常或乱码,解决方法一是从操作系统安装盘中提取或用系统自带的工具恢复相应系统文件,二是重装操作系统。 硬件解决方法: 1.打印机线缆故障导致打印乱码,有时打印线缆及其接口部位产生断路或短路都有可能导致打印乱码。可以在MS-DOS下,执行命令“dir>prn”来检测打印机线缆是否存在故障。 2.打印机自身硬件故障,可使用打印机自检来判断打印机是否存在硬件故障。如果真是打印机的问题,那就只能送修了。 3.打印机内存不足,在一次打印文件过大时也有可能出现打印乱码的情况,最好的办法是扩充打印机的内存,不过这种情况也不多见,多发生在早期内存较小的打印机上。 4.主板并口(打印口)损坏导致打印异常,这种情况很少见。

mysql中文乱码解决

转载:Mysql中文乱码的解决方法 第一种方法,很精辟的总结: 经常更换虚拟主机,而各个服务商的MYSQL版本不同,当导入数据后,总会出现乱码等无法正常显示的问题,查了好多资料,总结出自己的一点技巧: WINDOWS 下导入应该这样 使用MYSQL的命令 在DOS 命令下进入mysql的bin目录下,输入mysql -uroot -p密码数据库名称<要恢复的数据库, 例如我们要把D盘的一个名称为test.sql的数据库恢复到本地的test2这个数据库,那么就这样: mysql -uroot -p密码test2以前的国外主机用的Mysql是4.x系列的,感觉还比较好,都无论GBK和UTF-8都没有乱码,没想到新的主机的Mysql是5.0版本的,导入数据后,用Php读出来全是问号,乱码一片,记得我以前也曾经有过一次切换出现乱码的经验,原因肯定是Mysql版本之间的差异问题。 只好查资料,发现了一个解决方法,就是在mysql_connect后面加一句SET NAMES UTF8,即可使得UTF8的数据库消除乱码,对于GBK的数据库则使用SET NAMES GBK,代码如下: $mysql_mylink = mysql_connect($mysql_host, $mysql_user, $mysql_pass); mysql_query("SET NAMES 'GBK'"); 数据库字符集为utf-8 连接语句用这个 mysql_query("SET NAMES 'UTF8'"); mysql_query("SET CHARACTER SET UTF8"); mysql_query("SET CHARACTER_SET_RESULTS=UTF8'");

免费 java中文乱码字符集解决大全

java中文解决大全 Abstract:本文深入分析了Java程序设计中Java编译器对java源文件和JVM对class类文件的编码/解码过程,通过此过程的解析透视出了Java编程中中文问题产生的根本原因,最后给出了建议的最优化的解决Java中文问题的方法。 1.中文问题的来源 计算机最初的操作系统支持的编码是单字节的字符编码,于是,在计算机中一切处理程序最初都是以单字节编码的英文为准进行处理。随着计算机的发展,为了适应世界其它民族的语言(当然包括我们的汉字),人们提出了UNICODE编码,它采用双字节编码,兼容英文字符和其它民族的双字节字符编码,所以,目前,大多数国际性的软件内部均采用UNICODE编码,在软件运行时,它获得本地支持系统(多数时间是操作系统)默认支持的编码格式,然后再将软件内部的UNICODE转化为本地系统默认支持的格式显示出来。Java的JDK和JVM即是如此,我这里说的JDK是指国际版的JDK,我们大多数程序员使用的是国际化的JDK版本,以下所有的JDK均指国际化的JDK版本。我们的汉字是双字节编码语言,为了能让计算机处理中文,我们自己制定的gb2312、GBK、GBK2K等标准以适应计算机处理的需求。所以,大部分的操作系统为了适应我们处理中文的需求,均定制有中文操作系统,它们采用的是GBK,GB2312编码格式以正确显示我们的汉字。如:中文Win2K默认采用的是GBK编码显示,在中文WIN2k中保存文件时默认采用的保存文件的编码格式也是GBK的,即,所有在中文WIN2K中保存的文件它的内部编码默认均采用GBK编码,注意:GBK是在GB2312基础上扩充来的。 由于Java语言内部采用UNICODE编码,所以在JAVA程序运行时,就存在着一个从UNICODE编码和对应的操作系统及浏览器支持的编码格式转换输入、输出的问题,这个转换过程有着一系列的步骤,如果其中任何一步出错,则显示出来的汉字就会出是乱码,这就是我们常见的JAVA中文问题。 同时,Java是一个跨平台的编程语言,也即我们编写的程序不仅能在中文windows上运行,也能在中文Linux等系统上运行,同时也要求能在英文等系统上运行(我们经常看到有人把在中文win2k上编写的JAVA程序,移植到英文Linux上运行)。这种移植操作也会带来中文问题。 还有,有人使用英文的操作系统和英文的IE等浏览器,来运行带中文字符的程序和浏览中文网页,它们本身就不支持中文,也会带来中文问题。 几乎所有的浏览器默认在传递参数时都是以UTF-8编码格式来传递,而不是按中文编码传递,所以,传递中文参数时也会有问题,从而带来乱码现象。

相关主题
文本预览
相关文档 最新文档