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

---

# [`binhex`](https://python-all.ru/3.8/library/binhex.html#module-binhex) – Кодирование и декодирование файлов binhex4

**Исходный код:** [Lib/binhex.py](https://python-all.ru/src/3.8/Lib/binhex.py)

---

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

Модуль [`binhex`](https://python-all.ru/3.8/library/binhex.html#module-binhex) определяет следующие функции:

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

Преобразует двоичный файл с именем *input* в файл binhex *output*. Параметр *output* может быть именем файла или файлоподобным объектом (любой объект, поддерживающий методы `write()` и `close()`).

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

Декодирует файл binhex *input*. *input* может быть именем файла или файлоподобным объектом, поддерживающим методы `read()` и `close()`. Результирующий файл записывается в файл с именем *output*, если только аргумент не равен `None`; в этом случае имя выходного файла считывается из файла binhex.

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

#### `exception binhex.Error`

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

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

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

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

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