为什么保存下来的文件是乱码?

为什么保存下来的文件是乱码?,第1张

有时候打开Word文档会看见文档变成了一堆乱码。可以通过两个方法来挽救文件
一、替换格式法
就是把损坏的Word文档存为另一种格式。
1、打开被损坏的文档单击文件/另存为菜单,在 保存类型列表中,选择RTF格式,然后单击保存按钮,并关闭word。
2、打开刚才保存的RTF格式文件,再次使用 另存为将文件重新保存为Word文档,现在打开这个word文件就可以发现文件已经被恢复过来了。
如果在转换成rtf格式后文件仍然不能被恢复,可以将文件再次转换为纯文本格式(txt),再转换回Word格式。当然在转换为txt文件的时候其等信息会丢失掉。
二、删除格式信息法
Word文档的最后一个段落符号记录着全篇文档的格式信息,有时删除这些格式信息就可以恢复变成乱码的文件。
1、在打开损坏的文档后,单击工具/选项菜单,选择编辑标签,取消对使用智能段落选择范围复选框的勾选,然后单击 按钮。这样就可以修复文件了。
2、选定最后一个段落符之外的全部内容,然后将这些内容粘贴复制到新的word文件中即可。

首先检查问题出于电脑硬盘上还是优盘上。

1、如果是优盘上的,说明优盘是个假优盘,优盘出错。

2、如果是硬盘上的,那就是病毒搞得鬼,还有就是硬盘有问题。

电脑:是一种利用电子学原理根据一系列指令来对数据进行处理的机器。第一台电脑是1946年2月15日在美国宾夕法尼亚大学诞生的ENIAC通用电子计算机。随着科技的发展,现在新出现一些新型计算机有:生物计算机、光子计算机、量子计算机等。 1954年5月24日,晶体管电子计算机诞生。

下载的文件名有中文就会出现乱码,通常获取到的文件中通常都是“iso8859-1”格式,需要转换为“UTF-8”格式。

如:String str = new String(strgetByte("iso8859-1"),"UTF-8");进行下强制转换后在进行读取即可。

通常格式有GBK、UTf-8、iso8859-1、GB2312,如果上面的强制转换不成功,依次进行这些格式的尝试,肯定是可以解决问题的。

文件下载解决中文文件名下载乱码问题

在前面一篇文章里(浅谈 COMMON-FILEUPLOAD11 的使用 )我介绍了用JSP上传文件的方法,提到上传与之对应的便是下载,可能很多网友会说下载直接做个超连接不就可以了,当然对于一般的文件(不怎么重要的,或者是用来共享的)就足够用了,但是涉及到一些安全问题,或者是一些,txt,word这类的文件下载时就会碰到问题了,最常见的问题就是当你点击的链接时,是直接打开而不是提示保存的,可能有的时候你不喜欢直接打开而是直接保存,这时我们就要用到数据流来控制下载,

长话短说,这里我只提个重点:就是当下载中文名称的文件时,提示保存时显示的文字是乱码,这就是我们今天要重点解决的

相关资料:

Java的内核和class文件是基于unicode的,这使Java程序具有良好的跨平台性,但也带来了一些中文乱码问题的麻烦。原因主要有两方面,Java和JSP文件本身编译时产生的乱码问题和Java程序于其他媒介交互产生的乱码问题。

首先Java(包括JSP)源文件中很可能包含有中文,而Java和JSP源文件的保存方式是基于字节流的,如果Java和JSP编译成class文件过程中,使用的编码方式与源文件的编码不一致,就会出现乱码。基于这种乱码,建议在Java文件中尽量不要写中文(注释部分不参与编译,写中文没关系),如果必须写的话,尽量手动带参数-ecoding GBK或-ecoding gb2312编译;对于JSP,在文件头加上<%@ page contentType="text/html;charset=GBK"%>或<%@ page contentType="text/html;charset=gb2312"%>基本上就能解决这类乱码问题。

要重点讨论的是第二类乱码,即Java程序与其他存储媒介交互时产生的乱码。很多存储媒介,如数据库,文件,流等的存储方式都是基于字节流的,Java程序与这些媒介交互时就会发生字符(char)与字节(byte)之间的转换,例如从页面提交表单中提交的数据在Java程序里显示乱码等情况。

如果在以上转换过程中使用的编码方式与字节原有的编码不一致,很可能就会出现乱码。

有很多朋友都被Windows系统中各式各样的乱码所困惑。特别是收到的一些十分重要的邮件程序、文件时会遇到乱码,登上港台网站时会看到乱码,还有原先显示正常的Windows桌面、菜单中的汉字形如天书,本来显示正常的各种应用程序、游戏中的汉字也成了乱码等等,真的很是急人误事!那怎么办呢?
汉字乱码分类
汉字乱码现象有4种类型:
1文本乱码:是Windows系统显示乱码,如:菜单、桌面、提示框等。这是由于注册表中有关字体部分的设置不当引起的;
2文档乱码:是各种应用程序、游戏本来显示中文的地方出现乱码。这种乱码形成的原因比较复杂,有第1类的乱码原因,也可能是软件中用到的中文动态链接库被英文动态链接库覆盖所造成的;
3文件乱码:主要是指邮件乱码;
4网页乱码:是由于港台的繁体中文大五码(BIG5)与大陆简体中文(GB2312)不通用而造成的。
消除各类乱码的方法
一 系统乱码的消除方法
这类乱码是由于在Windows注册表中,关于字体部分配置不正常造成的,即使你用内码翻译软件处理也不会消除这类乱码。那怎么办呢?请跟我来:
方法一:找一台与你的Windows版本相同且显示正常的机器,依下列步骤进行:
1在正常机器上选择“开始”→“运行”,在对话框中键入“regedit”,打开注册表编辑器;
2请你将光标定位到“HKEY_LOCAL_MACHINE\ system\CurrentControlSet\Control\Fontassoc”,然后选择“注册表”→“导出注册表文件”,再选择“分支”,导出该分支注册表信息到文件(如ZTREG)中;
3把ZTREG文件拷贝到你那显示乱码的机器上,方法是:在显示乱码的机器上运行“regedit”,打开注册表编辑器,选择“注册表”→“导入注册注册表”,把ZTREG文件导入注册表中即可。
方法二:如果你找不到一台与你的Windows版本相同且显示正常的机器,则需要手工恢复字体部分的注册表
项,其步骤是:
1首先在显示乱码的机器上选择“开始”→“运行”,在对话框中键入“regedit”,打开注册表编辑器;
2选择“HKEY_LOCAL_MACHINE\System\ CurrentControlSet\Control\Fontassoc”,正常情况下,会有Associated DeaultFonts、Associated CharSet两个文件夹,其正确的内容应是:
子目录内容
中文Win98
中文Win98(OEM版)
中文Win2000
Associated 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 DefaultFonts
AssocSystemFont=“simsunttf”
FontPackageDecorative=“宋体”
FontPackageDontcare=“宋体”
FontPackageModern=“宋体”
FontPackageRoman=“宋体”
FontPackageScript=“宋体”
FontPackageSwiss=“宋体”

AssocSystemFont=“simsunttf”
FontPackage=“新宋体”
FontPackageDecorative=“新宋体”
FontPackageDontcare=“新宋体”
FontPackageModern=“新宋体”
FontPackageRoman=“新宋体”
FontPackageScript=“新宋体”
FontPackageSwiss=“新宋体”
3当出现汉字乱码时,上述两个文件夹中的内容就会不完整,有的没有Associated CharSet文件夹或其中的内容残缺不全;有的Associated DefaulFonts下的内容残缺。如果遇到这种情况怎么办呢?其实你只要打开注册表编辑器,在“HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Fonassoc”下,根据以上的正确内容恢复即可。
二 应用程序、游戏乱码的消除方法
明明是中文软件,可显示界面上却出现乱码,这可能是由于注册表中关于字体设置的信息不正确地被改变而造成的,一般是因为软件的中文链接库被英文链接库覆盖而引起的,这种现象经常发生在用微软开发工具,例如VB、VC开发的中文软件上。在这类软件中,菜单等显示界面上的汉字都是受一个动态链接库“DLL文件”控制,而软件的这个动态链接库一般是安装在Win 98/2000的System目录下的,如果以后你安装了某个英文软件也使用同名的动态链接库,则英文软件的动态链接库就会覆盖掉你原先的Windows\System下的中文软件的动态链接库。这样,当你运行中文软件时就会调用英文的动态链接库,因此出现乱码。解决办法是重新安装中文软件,恢复中文动态链接库即可。
三 电子邮件乱码的消除方法
1造成电子邮件乱码的原因很多,主要有以下几个方面:
(1) *** 作系统语种不同。对于中文电子邮件,如果收信方所用的 *** 作系统是英文环境而且没有外挂中文系统或未切换为中文编码方式,也会无法看到中文,只见到乱码。所有的双字节字符(如中文简/繁体的GB和BIG5码及日文的JIS、 EUC和朝鲜文的 KSC码等)在非本语种 *** 作系统下都会出现乱码。同样在中文简体的GB码环境下看其他双字节字符时也只能看到乱码。
解决方法:安装多语言支持包或使用多内码显示平台,对收到的邮件,根据其使用的语种切换到相应的编码方式即可消除乱码。
(2)邮件服务器不支持8位(非ASCII码格式)。传输邮件的传输机制或邮件编码的不同,可能造成邮件服务器不支持8位(非ASCII码格式)传输而形成邮件乱码。例如直接发送中文或二进制等非ASCII码格式的邮件(如中文双字节文件、文件jpg、可执行文件exe或压缩文件zip等二进制文件)时,邮件服务器有可能无法处理,便把信件中每个字符的第8位都过滤掉,从而造成邮件信息的失真或损坏,在收到邮件时就是一堆乱码。
解决方法:在发送8位格式的文本文件时,必须事先进行编码,将文件转换为7位ASCII码或更少位数的格式,然后才能保证文件的正确传送。收件人收到7位或更少位格式的邮件后,可以再转换为8位的格式,这样就可避免乱码。
(3)收发端使用的E-mail软件和设置不同。一般E-mail软件的“附件”功能都可以自动对信件先进行编码,然后再送出。这样,只要收信人使用E-mail软件就能区别信件的编码方式,就可以自动将信件解码。然而由于收发件人所用的E-mail软件默认配置不同或收发件人自己定制的一些选项不同,所以在收到编码的信件后,系统不一定能识别出信件所用的编码方法,自然无法自动解码,这样就会出现乱码。
解决方法:
①可以用WinZip+IE来解码,请你把乱码邮件的内容,拷贝到剪贴板中,然后将其粘贴到记事本中,存为文本文件(例如YJtxt),再将其后缀改为uue(改为YJuue),点击此文件,会启动WinZip,然后启动IE,把WinZip中的001txt 文件拖到IE窗口中,就会显示邮件原来的内容,而不会看到乱码。
②可以根据邮件中的关键字符判断编码方法,选取合适的解码软件进行解码。邮件的编码方式主要有:UUENCODE、 Base64 encode、QPencode、BINHEX等。 UUENCODE:这是UNIX环境下使用的编码方式,目前已经很少用,大体格式为:
begin 644 kkzip 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;"end
特征:乱码前面含有“begin xxx”,后面是编码前的原始文件名(如kkzip),接着是已经过编码的信件内容(如上述的乱码部分),最后一行为“end”。
解码办法:可用BECKY!EUDORA等E-mail软件,选择编码中相应的选项就可解码,也可以在E-mail软件中保存乱码邮件,存为后缀为“UUE”格式的文件,然后用Winzip 解码展开。解码后就会消除乱码。
MIME/BASE64 encode:该编码方式将3个字节用4个字节表示,由于编码后的内容是6位的,因此可避免第8位被截掉,大体格式为:
MIME-Version:10
Content-Type:text/plain; charset="us-ascii"
Content-Transfer-Encoding:base64
Status:R
SGmhQbF6pm6hSafapmK69Lj0pFexb6q+sXqsT6Skp OWrSKXzsN3DRLFNrmGhQQ0Kq1+sTqq6vdCx
0LF6tFit07D
dw0ShRw0KD QqtuqX9p2m2RLF6p9qoz6XOIE 1Py3Jvc29mdCuiB
JbnRlcm5ldCBN……
特征:乱码前一般有如下几部分“信头”: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
=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文件进行解压,即可看到正确的内容。
BINHEX:这种编码方式大体格式为:
(This file must be converted with Binhex40)
SGmhQbF6pm6hSafapmK69Lj0pFexb6qssTqq6vdCx
0LF6tFit07Ddw0ShRw0KDQqtuqX9p2m2RLF6p9q
oz6XOIE……
解码办法:用E-mail软件对它解码;也可在E-mail软件中保存乱码邮件,存为后缀为“HQX”格式的文件,然后用WinZip解码展开,解码后会消除乱码。
UTIF-7/UTIF-8:它们是UNICODE的两种转换码。
UTIF-7编码方式大体格式为:
+SGmhQbF/6pm6hSafapmK69L/j0pFexb6q+sXqsT6Skp OWrSKXzsN3DRLFNrmGhQQ0Kq1-sTqq6vdCx
0LF6tFit07Ddw0
ShRw0KD QqtuqX9p2m2RLF6p9qoz6XOIE 1Py3Jvc29mdCuiBJbn
Rlcm5ldCBN……
解码办法:在原E-mail头加入以下信息:
MIME-Version:10
Content-Type:text/plain; charset="utf-7"
Content-Transfer-Encoding:7bit
插入后与字符留一空行,将邮件存为“EML”后缀,然后用Outlook即可解码,消除乱码。
UTIF-8
解码办法:在原E-mail头加入以下信息:
MIME-Version:10
Content-Type:text/plain; charset="utf-8"
Content-Transfer-Encoding:8bit
将邮件存为“EML”后缀,然后用Outlook即可解码,消除乱码。
另外,还可以采用以下方法解决:
A请你在Outlook Express 中,把“查看”→“编码”选为“简体中文”;
B更改IE的设置:在IE浏览器中,打开“工具” →“Internet选项(o)”→“高级”,将“浏览”中“始终以 UTF-8 发送URL”选项前面的勾去掉;
C或将文件下载到本地硬盘里面再打开(点击鼠标右键选择“文件另存为…”)。保存文件时,文件名可能会是乱码,只需更改该文件名即可;
D或直接使用文件名为英文的附件,可以直接在IE中打开。
但有时仍不能奏效。
③无意中,笔者近日在网上冲浪时发现了一个好东西:很酷的CodeView“乱码察看器”!好事共享,不敢独吞!这就赶紧介绍给朋友们:
大名:乱码察看器
小名:CodeView
版本:250
系统平台:Win 95/98/NT/2000
CodeView“乱码察看器”顾名思义就是用来察看各种乱码的工具软件,目前已经可以支持MIME/BASE64,Quoted-Printable、HZ和UUCode 4种形式的编码和解码,通过一些特殊的算法,此程序还可以解开部分由于字节高位被屏蔽而形成的死乱码(使用其他方式的解码),另外还提供了很多附加的功能,比如单键解码功能和混合乱码识别功能,使得使用本程序解码变得非常容易和轻松,CodeView是绿色软件,无需安装,只要将得到的压缩文件解开到一个目录中即可运行。它有两种使用方法:
方法一:在有乱码的窗口中直接按下单键解码热键,默认为F7,如果窗口中的乱码能被识别,就会有一个窗口覆盖当前的乱码窗口,你可以直接在这个窗口中阅解码后的内容。在大多数情况下,笔者建议你使用这个方式。
方法二:将乱码的内容通过剪贴板复制到CodeView“乱码察看器”的源窗口中,然后你可以试着用不同的解码方式进行解码。这种方式解码将给你更多的选择自由,并且可以使用一些在单键解码中无法实现的解码方式(主要是其他方式解码和UUCode解码),对于一些单键解码无法解决的乱码,你就可以使用此方式来试试解码。
下载地址:>步骤一:使用Internet
Explorer(以下简称“IE”)打开邮件后,按Alt点击工具--兼容性视图设置,将该网页添加后查看;如果依旧,请尝试步骤二。
步骤二:打开Internet选项--高级,去除“以UTF-8形式发送URL路径”。
步骤三:打开邮件后按Alt--编码,确认是否为“Unicode(UTF-8)”;如果文件为其他编码的话可以在此进行设置。注:截图以Bing主页为例。

1、把文件复制到C:/windows/temp目录里,然后把temp目录里需要的文件用winrar压缩,然后到目标电脑解压。

2、可能你默认打开方式改变了,鼠标右键选择文件,选择打开方式-选择程序-勾选EXCEL为打开程序,勾选始终使用这种程序打开文件就可以了。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/13343865.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-18
下一篇 2023-07-18

发表评论

登录后才能评论

评论列表(0条)

保存