os是怎么.文件实现io.Writer



我可以这样做:

f, err := os.Create("file")
if err != nil {
    ....
}
by := bufio.NewWriter(f)

:

var _ io.Writer = &os.File{}

os的包文档。文件导致这个源文件,它确实包含一个未导出的写函数,但当我试图实现一个接口与一个未导出的函数时,我得到一个错误。

var _ Disease = &Scratch{}  // *Scratch doesn't implement Disease have spread() want Spread()
type Disease interface {
    Spread()
}
type Scratch struct {
    ....
}
func (s* Scratch) spread() {
    ....
}

我错过了什么?

:操作系统。文件确实需要清理

您缺少在*os.File上定义的导出的Write([]byte): https://golang.org/src/os/file.go?s=4417:4466#L128

最新更新