2 回答
TA贡献1875条经验 获得超3个赞
使用ParseFiles来解析模板。这段代码基本上与问题中调用 ReadFile、template.New 和 Parse 的作用相同,但它更短。
t, err := template.ParseFiles(path)
if err != nil {
log.Print(err)
return
}
使用os.Create打开输出文件。
f, err := os.Create(path)
if err != nil {
log.Println("create file: ", err)
return
}
一个文件是一个 io.Writer。可以直接对打开的文件执行模板:
err = t.Execute(f, config)
if err != nil {
log.Print("execute: ", err)
return
}
完成后关闭文件。
f.Close()
TA贡献1854条经验 获得超8个赞
这是我用 Cerise Limón 的答案制作的功能
func createFileUsingTemplate(t *template.Template, filename string, data interface{}) error {
f, err := os.Create(filename)
if err != nil {
return err
}
defer f.Close()
err = t.Execute(f, data)
if err != nil {
return err
}
return nil
}
- 2 回答
- 0 关注
- 222 浏览
添加回答
举报