summaryrefslogtreecommitdiffstats
path: root/Doc/lib/libbinhex.tex
blob: d30f2b437c67f2d16de76d016845e9076d0920ff (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
\section{\module{binhex} ---
         Encode and decode binhex4 files}

\declaremodule{standard}{binhex}
\modulesynopsis{Encode and decode files in binhex4 format.}


This module encodes and decodes files in binhex4 format, a format
allowing representation of Macintosh files in \ASCII.  On the Macintosh,
both forks of a file and the finder information are encoded (or
decoded), on other platforms only the data fork is handled.

The \module{binhex} module defines the following functions:

\begin{funcdesc}{binhex}{input, output}
Convert a binary file with filename \var{input} to binhex file
\var{output}. The \var{output} parameter can either be a filename or a
file-like object (any object supporting a \method{write()} and
\method{close()} method).
\end{funcdesc}

\begin{funcdesc}{hexbin}{input\optional{, output}}
Decode a binhex file \var{input}. \var{input} may be a filename or a
file-like object supporting \method{read()} and \method{close()} methods.
The resulting file is written to a file named \var{output}, unless the
argument is omitted in which case the output filename is read from the
binhex file.
\end{funcdesc}

The following exception is also defined:

\begin{excdesc}{Error}
Exception raised when something can't be encoded using the binhex
format (for example, a filename is too long to fit in the filename
field), or when input is not properly encoded binhex data.
\end{excdesc}


\begin{seealso}
  \seemodule{binascii}{Support module containing \ASCII-to-binary
                       and binary-to-\ASCII{} conversions.}
\end{seealso}


\subsection{Notes \label{binhex-notes}}

There is an alternative, more powerful interface to the coder and
decoder, see the source for details.

If you code or decode textfiles on non-Macintosh platforms they will
still use the Macintosh newline convention (carriage-return as end of
line).

As of this writing, \function{hexbin()} appears to not work in all
cases.