获取“ bytes.Buffer无法实现io.Writer”错误消息

我正在尝试使一些Go对象实现io.Writer,但是写入字符串而不是文件或类似文件的对象。bytes.Buffer自实施以来,我以为会奏效Write(p

[]byte)。但是,当我尝试这样做:

import "bufio"

import "bytes"

func main() {

var b bytes.Buffer

foo := bufio.NewWriter(b)

}

我收到以下错误:

cannot use b (type bytes.Buffer) as type io.Writer in function argument:

bytes.Buffer does not implement io.Writer (Write method has pointer receiver)

我很困惑,因为它清楚地实现了接口。如何解决此错误?

回答:

将指针传递给缓冲区,而不是缓冲区本身:

import "bufio"

import "bytes"

func main() {

var b bytes.Buffer

foo := bufio.NewWriter(&b)

}

以上是 获取“ bytes.Buffer无法实现io.Writer”错误消息 的全部内容, 来源链接: utcz.com/qa/411824.html

回到顶部