©
本文档使用
php.cn手册 发布
import "encoding/ascii85"
概述
索引
软件包 ascii85 实现了 btoa 工具和 Adobe 的 PostScript 和 PDF 文档格式中使用的 ascii85 数据编码。
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(dst, src []byte, flush bool) (ndst, nsrc int, err error)
解码将 src 解码为 dst,返回写入 dst 的字节数和从 src 消耗的数字。如果 src 包含无效的 ascii85 数据, Decode 将返回成功写入的字节数和一个 CorruptInputError。解码会忽略 src 中的空格和控制字符。通常,ascii85 编码的数据被封装在 <〜 和 〜> 符号中。解码期望这些被调用者剥离。
如果 flush 为 true,则 Decode 假定 src 表示输入流的结束并完全处理,而不是等待另一个 32 位块的完成。
NewDecoder 围绕 Decode 包装一个 io.Reader 接口。
func Encode(dst, src []byte) int
将编码的 src 编码为至多 dst 的 MaxEncodedLen(len(src))
字节,返回写入的实际字节数。
编码处理4字节块,对最后一个片段使用特殊编码,所以 Encode 不适用于大数据流的各个块。改用 NewEncoder()。
通常,ascii85 编码的数据被封装在 <〜 和 〜> 符号中。编码不会添加这些。
func MaxEncodedLen(n int) int
MaxEncodedLen 返回 n 个源字节的最大编码长度。
func NewDecoder(r io.Reader) io.Reader
NewDecoder 构造一个新的 ascii85 流解码器。
func NewEncoder(w io.Writer) io.WriteCloser
NewEncoder 返回一个新的 ascii85 流编码器。写入返回的作者的数据将被编码,然后写入 w。Ascii85 编码在 32 位块中运行;写完后,调用者必须关闭返回的编码器以刷新任何尾部分块。
type CorruptInputError int64
func (e CorruptInputError) Error() string