blob: d30f2b437c67f2d16de76d016845e9076d0920ff [file] [log] [blame]
\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.