19.7. binhex — binhex4 形式ファイルのエンコードおよびデコード

このモジュールは binhex4 形式のファイルに対するエンコードやデコードを行います。binhex4 は Macintosh のファイルを ASCII で表現できるようにしたものです。データフォークだけが処理されます。

binhex モジュールでは以下の関数を定義しています:

binhex.binhex(input, output)

ファイル名 input のバイナリファイルをファイル名 output の binhex 形式ファイルに変換します。 output パラメタはファイル名でも (write() および close() メソッドをサポートするような) ファイル様オブジェクトでもかまいません。

binhex.hexbin(input, output)

binhex 形式のファイル input をデコードします。 input はファイル名でも、 read() および close() メソッドをサポートするようなファイル様オブジェクトでもかまいません。変換結果のファイルはファイル名 output になります。この引数が None なら、出力ファイルは binhex ファイルの中から復元されます。

以下の例外も定義されています:

exception binhex.Error

binhex 形式を使ってエンコードできなかった場合 (例えば、ファイル名が filename フィールドに収まらないくらい長かった場合など) や、入力が正しくエンコードされた binhex 形式のデータでなかった場合に送出される例外です。

参考

binascii モジュール

ASCII からバイナリへ、バイナリからASCIIへの変換をサポートするモジュール。

19.7.1. 注釈

別のより強力なエンコーダおよびデコーダへのインタフェースが存在します。詳しくはソースを参照してください。

非 Macintosh プラットフォームでテキストファイルをエンコードしたりデコードしたりする場合でも、古い Macintosh の改行文字変換 (行末をキヤリッジリターンとする) が行われます。

このドキュメントを書いている時点では、 hexbin() はいつも正しく動作するわけではないようです。