blob: b24e00a5d619a26eda64fa81d08f22b1e1dc9f4e [file] [log] [blame]
Georg Brandl8ec7f652007-08-15 14:28:01 +00001
2:mod:`binhex` --- Encode and decode binhex4 files
3=================================================
4
5.. module:: binhex
6 :synopsis: Encode and decode files in binhex4 format.
7
8
9This module encodes and decodes files in binhex4 format, a format allowing
10representation of Macintosh files in ASCII. On the Macintosh, both forks of a
11file and the finder information are encoded (or decoded), on other platforms
12only the data fork is handled.
13
Benjamin Peterson23681932008-05-12 21:42:13 +000014.. warning::
15
16 In 3.0, special Macintosh support is removed.
17
18
Georg Brandl8ec7f652007-08-15 14:28:01 +000019The :mod:`binhex` module defines the following functions:
20
21
22.. function:: binhex(input, output)
23
24 Convert a binary file with filename *input* to binhex file *output*. The
25 *output* parameter can either be a filename or a file-like object (any object
26 supporting a :meth:`write` and :meth:`close` method).
27
28
29.. function:: hexbin(input[, output])
30
31 Decode a binhex file *input*. *input* may be a filename or a file-like object
32 supporting :meth:`read` and :meth:`close` methods. The resulting file is written
33 to a file named *output*, unless the argument is omitted in which case the
34 output filename is read from the binhex file.
35
36The following exception is also defined:
37
38
39.. exception:: Error
40
41 Exception raised when something can't be encoded using the binhex format (for
42 example, a filename is too long to fit in the filename field), or when input is
43 not properly encoded binhex data.
44
45
46.. seealso::
47
48 Module :mod:`binascii`
49 Support module containing ASCII-to-binary and binary-to-ASCII conversions.
50
51
52.. _binhex-notes:
53
54Notes
55-----
56
57There is an alternative, more powerful interface to the coder and decoder, see
58the source for details.
59
60If you code or decode textfiles on non-Macintosh platforms they will still use
Georg Brandl9af94982008-09-13 17:41:16 +000061the old Macintosh newline convention (carriage-return as end of line).
Georg Brandl8ec7f652007-08-15 14:28:01 +000062
63As of this writing, :func:`hexbin` appears to not work in all cases.
64