# 19.7. `binhex` - 编码和解码binhex4文件

源代码： Lib / binhex.py

此模块以binhex4格式编码和解码文件，这种格式允许以ASCII格式表示Macintosh文件。只处理数据fork。

`binhex`模块定义以下函数：

`binhex.``binhex`(input, output)

  将文件名输入的二进制文件转换为binhex文件输出。 输出参数可以是文件名或类似文件的对象（支持`write()`和`close()`方法的任何对象）。

`binhex.``hexbin`(input, output)

  解码binhex文件输入。输入可以是支持`read()`和`close()`方法的文件名或类似文件的对象。生成的文件将写入名为输出的文件，除非参数为`None`，在这种情况下，将从binhex文件读取输出文件名。

还定义了以下异常：

exception `binhex.``Error`

  当无法使用binhex格式（例如，文件名太长，不适合文件名字段）或当输入未正确编码的binhex数据时，出现异常。

也可以看看

模块`binascii`
  支持模块包含ASCII到二进制和二进制到ASCII转换。

## 19.7.1. 备注

有一个替代的，更强大的接口到编码器和解码器，请参阅源的详细信息。

如果在非Macintosh平台上编码或解码文本文件，它们仍将使用旧的Macintosh换行约定（回车作为行尾）。

在撰写本文时，`hexbin()`似乎在所有情况下都无法正常工作。