精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>编程开发>>C/C++>>编码解码>>乱码大全>>乱码大全(13)──BinHex

主题:乱码大全(13)──BinHex
发信人: wenbobo()
整理人: wenbobo(2002-12-22 01:27:57), 站内信件
发信人: bluesea (蓝海), 信区: Internet
标 题: 乱码大全(13)──BinHex
发信站: BBS 水木清华站 (Tue Apr 14 15:02:10 1998)

乱码大全(13)──BinHex

“乱码大全”,作者:bluesea,水木清华BBS成员。欢迎在 BBS中转载,帮
助计算机初学者解决使用软件过程中遇到的实际问题。本文原载于水木清华 BBS
的 Internet讨论区。地址是: telnet://bbs.tsinghua.edu.cn ,WWW访问的地
址是 http://bbs.tsinghua.edu.cn 。当下面的条件全部满足时,转载本文可以
不经过作者允许:(1) 转载水木清华 BBS 的信头;(2)不修改原文;(3) 转载仅
限于各种 BBS 和非商业性质的个人网点。 严禁各种形式的抄袭,严禁非作者将
本文或局部用于任何正式出版的刊物。本自然段是全文的一部分。

[email protected]

BinHex 编码是 Macintosh 计算机上用可打印字符表示/传输二进制文件的
一种编码方法。目前通用的 BinHex 4.0 的这种编码的文件一般以 .HQX 为后缀
名。 早期的 BinHex2.0 编码文件一般以 .HEX 为文件名后缀。 BinHex 4.0 是
一种带有 CRC 校验的编码。在一些 email 程序中 (如使用最广泛的邮件程序之
一 Eudora ),BinHex 编码是用于 Attach 二进制文件的方法之一。

但是有很多广泛使用的 email 程序不支持这种格式,如Microsoft OutLook
Express 接收 Eudora 发来的以 BinHex 夹带的二进制文件时,只能分辨出夹带
的文件,却不能正确解码。 类似的情况需要将信件 Forward 到一个可以解析相
应格式的邮件程序中或对邮件原文进行人工处理。

BinHex 编码是这个样子的:

(This file must be converted with BinHex 4.0)
:#dC*@&"A58iZ@NP3!("D59"`@NP3!!!!!%$)!!!!!'eC8%X$""3!!J!)!0e44b1
NrPJL%N!!!!"d!!!,!!!!4NPB8&G*6Lj&@%AX[AeJ8dA@1$c*6@l5I0`@U18lK)p
')&#4DK8#Y3MHLKmPJ+B8T&LJ3"&D6*0@A#KKSp$NP[UeUl$2IS$S2Z[(ZL"&!LL
......
!!!!!!!3!)+bfS!!!!!"'59K39dP1,N9B43F!1J"dH(#V#,jTFELAU2ql`i-5eAr
iVS(5RqX,rF9@h&M(%R)a@8flJFd'0dpD@i$pVJ"FFBTf'@a3V1Sb8%X&"J!!!!!
"!!%!G`!!!$Y!!!!!!"+D!!!!:

它的开始行必定是“(This file must be converted with BinHex 4.0)”,
整个数据块以冒号开始、并以冒号结尾。使用 BinHex 编码的邮件一般应该在信
头中含有类似下面这样的说明(假设Attach文件名为filename.ext的话):

Content-Type: application/mac-binhex40; name="filename.ext"
Content-Disposition: attachment; filename="filename.ext"

将含有数据块的文件更名为 .HQX, 即可双击该文件启动 Winzip 进行解码。
( http://www.winzp.com )。至此,我们不得不赞叹 winzip 在解码工作中的无以
伦比的表现 ( 其支持的后缀名有:*.zip、 *.z、 *.gz、*.tz、*.taz、*.tgz、
*.lzh、*.arj、*.arc、*.tar、.exe(ziped)、 *.uu、 *.uue、 *.xxe、*.bhx、
*.b64、*.hqx )。遗憾的是 Winzip 对 BinHex 的解码并不总是成功的。在测试
某一封Eudora发出的 BinHex 编码信件的时候,Winzip 不能解码。

一些软件支持BinHex解码,它们同时大多还支持一些其他编码。如 StuffIt
Expander ( ftp://ftp.aladdinsys.com/   或找其他共享软件网点)、 Fastcode32
( http://www.freewarehome.com/utilities/encrypt.html ) 等,一些网点 ( 如
http://helpdesk.uvic.ca/how-to/support/unix/hqx/unhqx.c )还提供了BinHex
解码的源程序。

BinHex 4.0 是由 Yves Lempereur 在 84-85 年开发的,这是目前最通用的
版本,在 Mac/Unix/PC 上广泛运用。Yves 还开发了一个与 MacBinary ( Mac上
面的另一种编码) 兼容的 BinHex 5.0 版本。 BinHex 5.0 与 BinHex 4.0 不兼
容,它们是两种截然不同的编码。 BinHex 比一般编码耗费更多的字节,并且跨
平台的解码工具比其他编码少。

--
上帝创造猫,是为了让人类体验抚摸老虎的快乐。

※ 来源:·BBS 水木清华站 bbs.net.tsinghua.edu.cn·[FROM: 202.112.145.96]


[关闭][返回]