Spec-Zone.ru › Elisp

Кодирование Base 64

Код Base 64 используется в электронной почте для кодирования последовательности 8-битных байтов в более длинную последовательность графических символов ASCII. Он определён в Internet RFC2045, а также в RFC 4648. В этом разделе описаны функции преобразования в этот код и обратно.

Команда: base64-encode-region beg end &optional no-line-break

Эта функция преобразует область от beg до end в код Base 64. Она возвращает длину закодированного текста. Если символ в области многобайтовый, возникает ошибка: в многобайтовом буфере область должна содержать только символы ASCII или необработанные байты.

Обычно эта функция вставляет в закодированный текст символы новой строки, чтобы избежать слишком длинных строк. Однако, если необязательный аргумент no-line-break не равен nil, эти символы новой строки не добавляются, поэтому результат представляет собой одну длинную строку.

Команда: base64url-encode-region beg end &optional no-pad

Эта функция аналогична base64-encode-region, но реализует вариант кодирования Base 64 для URL согласно RFC 4648 и не вставляет символы новой строки в закодированный текст, поэтому результат представляет собой одну длинную строку.

Если необязательный аргумент no-pad не равен nil, функция не добавляет символы заполнения (=).

Функция: base64-encode-string string &optional no-line-break

Эта функция преобразует строку string в код Base 64. Она возвращает строку с закодированным текстом. Как и в случае с base64-encode-region, если символ в строке многобайтовый, возникает ошибка.

Обычно эта функция вставляет в закодированный текст символы новой строки, чтобы избежать слишком длинных строк. Однако, если необязательный аргумент no-line-break не равен nil, эти символы новой строки не добавляются, поэтому результирующая строка представляет собой одну длинную строку.

Функция: base64url-encode-string string &optional no-pad

Аналогична base64-encode-string, но генерирует вариант Base 64 для URL и не вставляет символы новой строки в закодированный текст, поэтому результат представляет собой одну длинную строку.

Если необязательный аргумент no-pad не равен nil, эта функция не добавляет символы заполнения.

Команда: base64-decode-region beg end &optional base64url ignore-invalid

Эта функция преобразует область от beg до end из кода Base 64 в соответствующий декодированный текст. Она возвращает длину декодированного текста.

Функции декодирования игнорируют символы новой строки в закодированном тексте.

Если необязательный аргумент base64url не равен nil, заполнение не требуется и используется вариант кодирования Base 64 для URL. Если необязательный аргумент ignore-invalid не равен nil, любые нераспознанные символы игнорируются.

Функция: base64-decode-string string &optional base64url ignore-invalid

Эта функция преобразует строку string из кода Base 64 в соответствующий декодированный текст. Она возвращает однобайтовую строку, содержащую декодированный текст.

Функции декодирования игнорируют символы новой строки в закодированном тексте.

Если необязательный аргумент base64url не равен nil, заполнение не требуется и используется вариант кодирования Base 64 для URL. Если необязательный аргумент ignore-invalid не равен nil, любые нераспознанные символы игнорируются.

Copyright © 1990-1996, 1998-2026 Free Software Foundation, Inc.
Licensed under the GNU GPL license.
https://www.gnu.org/software/emacs/manual/html_node/elisp/Base-64.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API