在Go语言中,bytes.Buffer类型是一个实现了字节缓冲区的数据结构。下面是使用bytes.Buffer的示例:
- 创建一个新的Buffer对象
var buffer bytes.Buffer
- 写入数据到Buffer中
buffer.WriteString("Hello, world!")
- 从Buffer中读取数据
data := buffer.Bytes()
- 清空Buffer中的内容
buffer.Reset()
- 将Buffer中的数据输出到标准输出流(控制台)
buffer.WriteTo(os.Stdout)
- 将其他数据类型转换为字符串并写入到Buffer中
var num int = 42
buffer.WriteString(strconv.Itoa(num))
- 获取Buffer中的长度和容量信息
length := buffer.Len()
capacity := buffer.Cap()
- 在指定位置插入数据到Buffer中
pos := 5
insertData := []byte(" inserted ")
buffer.Write(insertData)
copy(buffer.Bytes()[pos+len(insertData):], buffer.Bytes()[pos:])
copy(buffer.Bytes()[pos:], insertData)




