本篇只是自己学习过程中的一个记录
首先需要引入xml包
import "encoding/xml"
这里我们先定义一个用于序列化和反序列化的结构用于测试。
type TTest struct { Path string `xml:"path"` Val int `xml:"val"` Name string `xml:"name,attr"` // 属性的也可写作 xml:",attr" attr表示是一个属性值 }
序列化
test := &TTest{"C:\\aaaa",1111,"xxoo"} b,err := xml.Marshal(test) fmt.Println(string(b),err)
成功后输出:
<TTest name="xxoo"><path>C:\aaaa</path><val>1111</val></TTest>
反序列化
var test1 TTest err = xml.Unmarshal(b,&test1) fmt.Println("name:",test1.Name,"path:",test1.Path,"val:",test1.Val)
成功后输出:name: xxoo path: C:\aaaa val: 1111