Ich versuche, ein Go-Objekt io.Writer implementieren zu lassen, schreibe aber in eine Zeichenfolge anstelle einer Datei oder eines dateiähnlichen Objekts. Ich dachte, es bytes.Buffer
würde funktionieren, da es implementiert wird Write(p []byte)
. Wenn ich dies jedoch versuche:
import "bufio"
import "bytes"
func main() {
var b bytes.Buffer
foo := bufio.NewWriter(b)
}
Ich erhalte folgende Fehlermeldung:
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)
Ich bin verwirrt, da es die Schnittstelle klar implementiert. Wie behebe ich diesen Fehler?