19.10. uu
— uuencode形式のエンコードとデコード¶
ソースコード: Lib/uu.py
このモジュールではファイルを uuencode 形式(任意のバイナリデータを ASCII 文字列に変換したもの)にエンコード、デコードする機能を提供します。引数としてファイルが仮定されている所では、ファイルのようなオブジェクトが利用できます。後方互換性のために、パス名を含む文字列も利用できるようにしていて、対応するファイルを開いて読み書きします。しかし、このインタフェースは利用しないでください。呼び出し側でファイルを開いて(Windows では 'rb'
か 'wb'
のモードで)利用する方法が推奨されます。
このコードは Lance Ellinghouse によって提供され、Jack Jansen によって更新されました。
uu
モジュールでは以下の関数を定義しています:
-
uu.
encode
(in_file, out_file, name=None, mode=None)¶ in_file を out_file にエンコードします。エンコードされたファイルには、デフォルトでデコード時に利用されるname と mode を含んだヘッダがつきます。省略された場合には、in_file から取得された名前か
'-'
という文字と、0o666
がそれぞれデフォルト値として与えられます。
-
uu.
decode
(in_file, out_file=None, mode=None, quiet=False)¶ uuencode 形式でエンコードされた in_file をデコードして varout_file に書き出します。もし out_file がパス名でかつファイルを作る必要があるときには、 mode がパーミッションの設定に使われます。 out_file と mode のデフォルト値は in_file のヘッダから取得されます。しかし、ヘッダで指定されたファイルが既に存在していた場合は、
uu.Error
が送出されます。誤った実装の uuencoder による入力で、エラーから復旧できた場合、
decode()
は標準エラー出力に警告を表示するかもしれません。 quiet を真にすることでこの警告を抑制することができます。
-
exception
uu.
Error
¶ Exception
のサブクラスで、uu.decode()
によって、さまざまな状況で送出される可能性があります。上で紹介された場合以外にも、ヘッダのフォーマットが間違っている場合や、入力ファイルが途中で区切れた場合にも送出されます。
参考
- モジュール
binascii
- ASCII からバイナリへ、バイナリから ASCII への変換をサポートするモジュール。