bytes

最后更新于:2022-04-02 02:42:22

[TOC] ## 语法 ### Func ``` func Compare(a, b []byte) int func Equal(a, b []byte) bool func EqualFold(s, t []byte) bool // Runes函数返回和s等价的\[\]rune切片。(将utf-8编码的unicode码值分别写入单个rune) func Runes(s []byte) []rune func HasPrefix(s, prefix []byte) bool func HasSuffix(s, suffix []byte) bool func Contains(b, subslice []byte) bool func Count(s, sep []byte) int func Index(s, sep []byte) int func IndexByte(s []byte, c byte) int func IndexRune(s []byte, r rune) int func IndexAny(s []byte, chars string) int func IndexFunc(s []byte, f func(r rune) bool) int func LastIndex(s, sep []byte) int func LastIndexAny(s []byte, chars string) int func LastIndexFunc(s []byte, f func(r rune) bool) int func Title(s []byte) []byte func ToLower(s []byte) []byte func ToLowerSpecial(_case unicode.SpecialCase, s []byte) []byte func ToUpper(s []byte) []byte func ToUpperSpecial(_case unicode.SpecialCase, s []byte) []byte func ToTitle(s []byte) []byte func ToTitleSpecial(_case unicode.SpecialCase, s []byte) []byte func Repeat(b []byte, count int) []byte func Replace(s, old, new []byte, n int) []byte func Map(mapping func(r rune) rune, s []byte) []byte func Trim(s []byte, cutset string) []byte func TrimSpace(s []byte) []byte func TrimFunc(s []byte, f func(r rune) bool) []byte func TrimLeft(s []byte, cutset string) []byte func TrimLeftFunc(s []byte, f func(r rune) bool) []byte func TrimPrefix(s, prefix []byte) []byte func TrimRight(s []byte, cutset string) []byte func TrimRightFunc(s []byte, f func(r rune) bool) []byte func TrimSuffix(s, suffix []byte) []byte func Fields(s []byte) [][]byte func FieldsFunc(s []byte, f func(rune) bool) [][]byte func Split(s, sep []byte) [][]byte func SplitN(s, sep []byte, n int) [][]byte func SplitAfter(s, sep []byte) [][]byte func SplitAfterN(s, sep []byte, n int) [][]byte func Join(s [][]byte, sep []byte) []byte ``` ### Type ``` type Buffer func NewBuffer(buf []byte) *Buffer func NewBufferString(s string) *Buffer func (b *Buffer) Bytes() []byte func (b *Buffer) Cap() int func (b *Buffer) Grow(n int) func (b *Buffer) Len() int func (b *Buffer) Next(n int) []byte func (b *Buffer) Read(p []byte) (n int, err error) func (b *Buffer) ReadByte() (byte, error) func (b *Buffer) ReadBytes(delim byte) (line []byte, err error) func (b *Buffer) ReadFrom(r io.Reader) (n int64, err error) func (b *Buffer) ReadRune() (r rune, size int, err error) func (b *Buffer) ReadString(delim byte) (line string, err error) func (b *Buffer) Reset() func (b *Buffer) String() string func (b *Buffer) Truncate(n int) func (b *Buffer) UnreadByte() error func (b *Buffer) UnreadRune() error func (b *Buffer) Write(p []byte) (n int, err error) func (b *Buffer) WriteByte(c byte) error func (b *Buffer) WriteRune(r rune) (n int, err error) func (b *Buffer) WriteString(s string) (n int, err error) func (b *Buffer) WriteTo(w io.Writer) (n int64, err error) type Reader func NewReader(b []byte) *Reader func (r *Reader) Len() int func (r *Reader) Read(b []byte) (n int, err error) func (r *Reader) ReadAt(b []byte, off int64) (n int, err error) func (r *Reader) ReadByte() (byte, error) func (r *Reader) ReadRune() (ch rune, size int, err error) func (r *Reader) Reset(b []byte) func (r *Reader) Seek(offset int64, whence int) (int64, error) func (r *Reader) Size() int64 func (r *Reader) UnreadByte() error func (r *Reader) UnreadRune() error func (r *Reader) WriteTo(w io.Writer) (n int64, err error) ``` ## 语法 ### bytes.Runes ``` a := []byte("你好啊") runes := bytes.Runes(a) fmt.Printf("%q\n", runes) // ['你' '好' '啊'] b := []byte("abc") fmt.Printf("%v\n", bytes.Runes(b)) // [97 98 99] ``` ### 生成 buffer的方式 ``` var b bytes.buffer func NewBuffer(buf []byte) *Buffer func NewBufferString(s string) *Buffer ``` ### WriteTo 指定输出 ``` var b bytes.Buffer b.Write([]byte("hello world")) b.WriteTo(os.Stdout) ``` ### reader 使用 ``` b := bytes.NewBufferString("hello world") io.Copy(os.Stdout,b) ``` ## buyes.Reader ``` type Reader func NewReader(b []byte) *Reader func (r *Reader) Len() int func (r *Reader) Read(b []byte) (n int, err error) func (r *Reader) ReadByte() (b byte, err error) func (r *Reader) UnreadByte() error func (r *Reader) ReadRune() (ch rune, size int, err error) func (r *Reader) UnreadRune() error func (r *Reader) Seek(offset int64, whence int) (int64, error) func (r *Reader) ReadAt(b []byte, off int64) (n int, err error) func (r *Reader) WriteTo(w io.Writer) (n int64, err error) ```
';