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.ReadBytes 或ReadString |
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.Reader 和io.Writer 包装成一个带缓冲区的bufio.ReadWriter |
|
ScanBytes | bufio.Scanner 的一种分割函数,将输入数据按字节进行分割 |
|
ScanLines | bufio.Scanner 的一种分割函数,将输入文本按行进行分割 |
会移除行尾的换行符 |
ScanRunes | bufio.Scanner 的一种分割函数,将输入数据按rune 进行分割 |
|
ScanWords | bufio.Scanner 的一种分割函数,将输入文本按以空格 分隔的单词进行分割 |
会移除单词之间的空格 |