Reader

方法 含义 说明
Buffered 返回从当前缓冲区内可以读取的字节数量
Discard 跳过接下来的n字节
Peek 查看接下来的n字节 不移动读指针
Read bufio.Reader中读取内容到字节切片
ReadByte bufio.Reader中读取一个字节
ReadBytes bufio.Reader中读取数据,直到遇到指定的分隔符delim 包含分隔符
ReadLine bufio.Reader中读取一行数据 不包含换行符,建议使用Reader.ReadBytes('\n')Reader.ReadString('\n')或者Scanner
ReadRune bufio.Reader中读取一个rune
ReadSlice bufio.Reader中读取数据,直到遇到指定的分隔符delim 包含分隔符,建议使用Reader.ReadBytesReadString
ReadString bufio.Reader中读取数据,直到遇到指定的分隔符delim 包含分隔符
Reset 重置bufio.Reader
Size 返回底层缓冲区的大小
UnreadByte 回退最后读取的一个字节
UnreadRune 回退最后读取的一个rune
WriteTo 将数据从bufio.Reader写入到io.Writer

Writer

方法 含义 说明
Available 返回当前缓冲区中可以写入的字节数量
AvailableBuffer 返回一个空的缓冲区,容量是Available返回的值
Buffered 返回当前缓冲区中已经写入的字节数量
Flush 将缓冲区中的数据写入到io.Writer
ReadFrom io.Reader读取数据到bufio.Writer
Reset 重置bufio.Writer
Size 返回底层缓冲区的大小
Write 将数据写入bufio.Writer
WriteByte 将一个字节写入bufio.Writer
WriteRune 将一个rune写入bufio.Writer
WriteString 将一个字符串写入bufio.Writer

Scanner

方法 含义 说明
Buffer 设置在扫描时要使用的初始缓冲区,及在扫描过程中可能分配的最大缓冲区大小
Bytes 返回由最近一次调用Scanner.Scan生成的令牌 不会进行内存分配
Err 返回扫描过程中遇到的第一个非EOF错误
Scan 使扫描器前进到下一个令牌
Split 设置扫描器的分割函数 在扫描已经开始之后调用会触发panic
Text 返回由最近一次调用Scanner.Scan生成的令牌 进行内存分配

包函数

方法 含义 说明
NewReader io.Reader创建一个带缓冲区的bufio.Reader
NewReaderSize io.Reader创建一个带缓冲区的bufio.Reader,并指定缓冲区的大小
NewWriter io.Writer创建一个带缓冲区的bufio.Writer
NewWriterSize io.Writer创建一个带缓冲区的bufio.Writer,并指定缓冲区的大小
NewReadWriter io.Readerio.Writer包装成一个带缓冲区的bufio.ReadWriter
ScanBytes bufio.Scanner的一种分割函数,将输入数据按字节进行分割
ScanLines bufio.Scanner的一种分割函数,将输入文本按行进行分割 会移除行尾的换行符
ScanRunes bufio.Scanner的一种分割函数,将输入数据按rune进行分割
ScanWords bufio.Scanner的一种分割函数,将输入文本按以空格分隔的单词进行分割 会移除单词之间的空格