> **Источник:** https://python-all.ru/3.0/library/binhex.html
>
> «Документация Python на русском» – неофициальный перевод официальной документации Python: версии от 2.6 до 3.16, полнотекстовый поиск, английский оригинал рядом с переводом. Эта Markdown-версия страницы предназначена для работы с LLM: вставьте её в ChatGPT, Claude или Cursor.

---

# `binhex` – Кодирование и декодирование файлов binhex4

Этот модуль кодирует и декодирует файлы в формате binhex4 – формате, позволяющем представлять файлы Macintosh в ASCII. Обрабатывается только ветвь данных (data fork).

Модуль `binhex` определяет следующие функции:

#### `[binhex.binhex]binhex.binhex(input, output)`

Преобразует двоичный файл с именем

*input*

в файл binhex

*output*

. Параметр

*output*

может быть именем файла или файлоподобным объектом (любой объект, поддерживающий методы

`write()`

и

`close()`

).

#### `[binhex.hexbin]binhex.hexbin(input[, output])`

Декодирует файл binhex

*input*

.

*input*

может быть именем файла или файлоподобным объектом, поддерживающим методы

`read()`

и

`close()`

. Результирующий файл записывается в файл с именем

*output*

, если только аргумент не опущен; в этом случае имя выходного файла читается из файла binhex.

Также определено следующее исключение:

#### `[binhex.Error]exception binhex.Error`

Исключение возникает, когда что-то не может быть закодировано в формате binhex (например, имя файла слишком длинное для поля имени файла) или когда входные данные не являются корректно закодированными данными binhex.

> **См. также**
>
> **Модуль [`binascii`](https://python-all.ru/3.0/library/binascii.html#module-binascii)**
>
> Вспомогательный модуль, содержащий преобразования ASCII-в-двоичный и двоичный-в-ASCII.

## Примечания

Существует альтернативный, более мощный интерфейс для кодера и декодера; подробности см. в исходном коде.

При кодировании или декодировании текстовых файлов на платформах, отличных от Macintosh, они по-прежнему будут использовать старую конвенцию перевода строки Macintosh (возврат каретки в качестве конца строки).

На момент написания этой документации [`hexbin()`](https://python-all.ru/3.0/library/binhex.html#binhex.hexbin), похоже, не работает во всех случаях.
