当前位置: 首页 > 文档资料 > Go 入门指南 >

12.7 用 defer 关闭文件

优质
小牛编辑
135浏览
2023-12-01

defer 关键字(参看 6.4)对于在函数结束时关闭打开的文件非常有用,例如下面的代码片段:

func data(name string) string {
    f, _ := os.OpenFile(name, os.O_RDONLY, 0)
    defer f.Close() // idiomatic Go code!
    contents, _ := ioutil.ReadAll(f)
    return string(contents)
}

在函数 return 后执行了 f.Close()