go text/templete模板

u010165367 · · 1424 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

抽空把go 的text/templete模板整理学习了,现在总结下。
步骤
1、定义数据类型


type Opt struct{
    Name string
    Age int
    Score float32
}

one := Opt{"xiao chao",26,90}
two := Opt{"xiao er",29,89}

2、建立模板

    one_str := "one_str :my name is {{.Name}},and age is {{.Age}},my score is {{.Score}}."

    two_str := "two_str :my name is {{.Name}},and age is {{.Age}},my score is {{.Score}}."

   t1 := template.New("one1")
   t2 := template.New("two2")

3、解析模板

     t1,_ = t1.Parse(one_str)
     t2,_ = t2.Parse(two_str)

4、执行模板

        t1.ExecuteTemplate(os.Stdout,"one1",one)
        println("\n")
        t2.ExecuteTemplate(os.Stdout,"two2",two)

完整代码:

package main

import (
    "os"
    "text/template"
)
type Opt struct{
    Name string
    Age int
    Score float32
}

func main() {
    /*
    stu := Opt{"zhao zi long",30,99}
    tmpl, err := template.New("stu").Parse("hello, name:{{.Name}},age:{{.Age}},score:{{.Score}}") //建立一个模板,内容是"hello, {{.}}"
    //tmp2,err2 := template.New("").ExecuteTemplate()
    if err != nil {   
            panic(err)
    }   
    err = tmpl.Execute(os.Stdout, stu)  //将string与模板合成,变量name的内容会替换掉{{.}} 
    //合成结果放到os.Stdout里
    if err != nil {
        panic(err)
    }   
    */
    one := Opt{"xiao chao",26,90}
    two := Opt{"xiao er",29,89}

    one_str := "one_str :my name is {{.Name}},and age is {{.Age}},my score is {{.Score}}."
    two_str := "two_str :my name is {{.Name}},and age is {{.Age}},my score is {{.Score}}."

    t1 := template.New("one1")
    t2 := template.New("two2")

    t1,_ = t1.Parse(one_str)
    t2,_ = t2.Parse(two_str)

    t1.ExecuteTemplate(os.Stdout,"one1",one)
    println("\n")
    t2.ExecuteTemplate(os.Stdout,"two2",two)
}

有疑问加站长微信联系(非本文作者)

本文来自:CSDN博客

感谢作者:u010165367

查看原文:go text/templete模板

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1424 次点击  
加入收藏 微博
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传