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

---

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

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

> **Примечание**
>
> В Python 3.x специальная поддержка Macintosh была удалена.

Модуль [`binhex`](https://python-all.ru/2.7/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*, если только аргумент не опущен; в этом случае имя выходного файла считывается из binhex-файла.

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

#### `exception binhex.Error`

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

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

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

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

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

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