這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。
golang的template包很好用,做一些複雜的文字格式設定產生太有協助了,產生網頁也是很不錯的,使用起來非常方便.
package main import ( "fmt" "os" "text/template") type Latlng struct { Lat float32 Lng float32} func (latlng Latlng) String() string { return fmt.Sprintf("%g/%g", latlng.Lat, latlng.Lng)} func main() { data := []template.FuncMap{} data = append(data, template.FuncMap{"name":"dotcoo1", "url":"http://www.dotcoo.com/", "latlng":Latlng{24.1, 135.1}}) data = append(data, template.FuncMap{"name":"dotcoo2", "url":"http://www.dotcoo.com/", "latlng":Latlng{24.2, 135.2}}) data = append(data, template.FuncMap{"name":"dotcoo2", "url":"http://www.dotcoo.com/", "latlng":Latlng{24.3, 135.3}}) datatpl := `{{range .}}{{template "user" .}}{{end}}` usertpl := `{{define "user"}}name:{{.name}}, url:{{.url}}, latlng:{{.latlng}} lat:{{.latlng.Lat}} lng:{{.latlng.Lng}}{{end}}` tpl, err := template.New("data").Parse(datatpl) if err != nil { panic(err) } _, err = tpl.Parse(usertpl) if err != nil { panic(err) } err = tpl.Execute(os.Stdout, data) if err != nil { panic(err) } println()}http://www.dotcoo.com/golang-template-dome