Spec-Zone.ru › Go

Пакет ascii85

  • import "encoding/ascii85"
  • Обзор
  • Указатель

Обзор

Пакет ascii85 реализует кодирование данных ascii85, используемое в инструменте btoa и форматах документов PostScript и PDF компании Adobe.

Указатель

  • func Decode(dst, src []byte, flush bool) (ndst, nsrc int, err error)
  • func Encode(dst, src []byte) int
  • func MaxEncodedLen(n int) int
  • func NewDecoder(r io.Reader) io.Reader
  • func NewEncoder(w io.Writer) io.WriteCloser
  • type CorruptInputError
  • func (e CorruptInputError) Error() string

Файлы пакета

ascii85.go

func Decode

func Decode(dst, src []byte, flush bool) (ndst, nsrc int, err error)

Decode декодирует src в dst и возвращает как число байт, записанных в dst, так и число байт, обработанных из src. Если src содержит некорректные данные ascii85, Decode вернёт число успешно записанных байт и CorruptInputError. Decode игнорирует пробелы и управляющие символы в src. Часто данные, закодированные в ascii85, заключают в символы <~ и ~>. Decode предполагает, что вызывающая сторона удалила эти символы.

Если flush имеет значение true, Decode предполагает, что src представляет конец входного потока, и обрабатывает его полностью, не ожидая завершения следующего 32-битного блока.

NewDecoder оборачивает интерфейс io.Reader вокруг Decode.

func Encode

func Encode(dst, src []byte) int

Encode кодирует src не более чем в MaxEncodedLen(len(src)) байт dst и возвращает фактическое число записанных байт.

Кодирование обрабатывает блоки по 4 байта, используя специальное кодирование для последнего фрагмента, поэтому Encode не подходит для отдельных блоков большого потока данных. Вместо этого используйте NewEncoder.

Часто данные, закодированные в ascii85, заключают в символы <~ и ~>. Encode не добавляет эти символы.

func MaxEncodedLen

func MaxEncodedLen(n int) int

MaxEncodedLen возвращает максимальную длину представления n исходных байт после кодирования.

func NewDecoder

func NewDecoder(r io.Reader) io.Reader

NewDecoder создаёт новый потоковый декодер ascii85.

func NewEncoder

func NewEncoder(w io.Writer) io.WriteCloser

NewEncoder возвращает новый потоковый кодировщик ascii85. Данные, записанные в возвращённый writer, будут закодированы, а затем записаны в w. Кодирование ascii85 выполняется блоками по 32 бита; после завершения записи вызывающая сторона должна вызвать Close для возвращённого кодировщика, чтобы сбросить оставшийся неполный блок.

type CorruptInputError

type CorruptInputError int64

func (CorruptInputError) Error

func (e CorruptInputError) Error() string

© Google, Inc.
Licensed under the Creative Commons Attribution License 3.0.
http://golang.org/pkg/encoding/ascii85/

Spec-Zone.ru

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