【发布时间】:2014-12-24 01:40:45
【问题描述】:
我对 Golang 还很陌生;以前用过 Python。
我很难在对象中应用 bufio。
type fout struct {
filename string
fo File
bfo Writer
}
func (a *fout) init() {
a.fo,_:=os.Open(a.filename)
a.bfo:=bufio.NewWriter(fo)
}
基本上,我喜欢创建对象;每个都有它的文件名,并且会使用 bufio。
谁能帮帮我?
谢谢
【问题讨论】:
-
每次使用来自另一个包的名称都需要以包名作为前缀——所以
fo File必须是fo *os.File。您通常将*bufio.Writer和*os.File声明为指针(请参阅golang.org/pkg 处的bufio 和文件文档)您想要简单的=,而不是:=,用于分配给a.fo和a.bfo等属性。不要丢弃错误,尤其是当您习惯了异常时,否则您将遇到无法调试的问题。 (对于一个简单的学习脚本,你可以if err != nil { panic(...) },但真正使用,你几乎总是想退回它们。) -
@twotwotwo 我是 stackoverflow 的新手;我怎样才能选择你的答案作为“答案”?
-
你不能因为那不是一个“答案”,但我已经发布了一个你可以接受的。