乱码大全(11)──常见文件格式

来源:百度文库 编辑:神马文学网 时间:2024/04/29 00:06:35
乱码大全(11)──常见文件格式  在乱码大全之(7)中,我们提到了 email 在进行文件编码的时候要进行适当的说明,比如:Content-Type: text/plain;charset="gb2312",而如果是二进制文件则需要“Content-Type: application/x-download”或其他说明。也就是说 email (客户)程序如何进行(正确地)解码或恢复 Attached 文件,取决于发送 email 的程序如何组织 email 的全文。当它们配合不当的时候,乱码就会发生。
还有很多情况,二进制文件没有经过任何编码就传到 email 中了, email 程序不仅没有还原二进制文件,而且传来的 email 连文件名都没有带。例如:
MZ....莦S髛)沈ㄣs羖帶h=)膄浉鄐Hb戸El傽1gf浉鄐ore膏934sLLJD………………
……………………………………………………………………………………………
这种情况现在是比较少了,但是并不是没有。最好是让对方重发。在你思考如何处理的时候,先判断它们是什么类型的文件有助于你采取合适的措施。由于文件类型是无法列全的,我们只能举一些常见的例子。这些在其他场合,对于我们进行文件的恢复、判断都有一些帮助。
这些乱码在 email 中并不是有规律地显示的,而是一长串的乱码。只有碰巧遇到回车、换行符号才换行显示。我们至少需要辨认的是这些文件的开头:
辨认文件的开头并不能 100% 地鉴别一个文件的类型,但是对于我们常见的情况往往是有效的。 如果 email 程序没有还原这些文件,那么要小心的是编辑程序对于回车换行的处理会造成文件的损毁。在 Unix 中,文本文件的换行只有一个换行,而在 MS-DOS/Windows 中由回车换行 (0Dh, 0Ah) 两个符号完成。二进制文件中根据概率将随机存在 0Dh、0Ah、0D0Ah 这样的符号, 不同的文本编辑程序在另存的时候处理方式是不同的,有的是统一变成 0D0Ah,这样,原来的二进制文件将被破坏。
如果你用的是 Microsoft Mail/OutLook Express,可以将邮件直接存成 EML 文件,再用 UltraEdit 在 Hex 方式去除信头;如果是其他的 email 程序,可能要去寻找存放 email 目录的文件,从中截取相应的部分。如果是在 Hotmail 等 Webmail 中发现这样的情况,从剪辑板拷贝信体一般是不行的,应该设法将 email Forward 或 reply 到其他信箱再试验。总之,这种情况下恢复二进制文件需要格外注意的就是信息能否完全保存,没有固定的方法,也并不一定能够恢 复成功。
如果恢复的二进制无法确认它的类型,可以借助 Quick View Plus 4.5 ( http://www.inso.com ) 来判断。除了柯达图象等少数文件外,大多数文件格式都能够识别。
“乱码大全”,作者:bluesea,水木清华BBS成员。欢迎在 BBS 中转载,帮助计算机初学者解决使用软件过程中遇到的实际问题。本文原载于水木清华 BBS 的 Internet 讨论区。地址是: telnet://bbs.tsinghua.edu.cn ,WWW访问的地址是 http://bbs.tsinghua.edu.cn 。当下面的条件全部满足时,转载本文可以不经过作者允许:(1) 转载水木清华 BBS 的信头;(2)不修改原文;(3) 转载仅限于各种 BBS 和非商业性质的个人网点。 严禁各种形式的抄袭,严禁非作者将本文或局部用于任何正式出版的刊物。本自然段是全文的一部分。