技術向上

プログラミングの学び、気になるテクノロジーやビジネストレンドを発信

template.ParseFiles()【Go】

templateとして外部ファイルを取り込むメソッドです。

tpl, err := template.ParseFiles("tpl.gohtml")    // tpl.gohtmlというファイルを取り込む
if err != nil {
    log.Fatal(err)
}

err = tpl.Execute(os.Stdout, nil)    // 画面出力する。適用するdataはないので、第2引数はnil
if err != nil {
    log.Fatal(err)
}


外部ファイルの拡張子gohtmlをご存知ない方もいるかもしれません。
もちろん、この拡張子の定義は存在しません。
templateと指定するファイルの拡張子は何でも良いのです。
ただ慣習的に、.gohtmlと指定するようです。

画面出力ではなく、ファイルを作成する場合は、下記のようにします。

tpl, err := template.ParseFiles("tpl.gohtml")
if err != nil {
    log.Fatal(err)
}

nf, err := os.Create("index.html")    // 同階層にindex.htmlを作成
if err != nil {
    log.Fatal(err)
}

err = tpl.Execute(nf, nil)    // index.htmlにコピー
if err != nil {
    log.Fatal(err)
}