将当前 XML 元素中的属性解组为匿名结构的工作原理是:
package main
import (
"encoding/xml"
"fmt"
)
type Attrs struct {
Attr1 int `xml:"attr1,attr"`
Attr2 int `xml:"attr2,attr"`
}
type Element struct {
Attrs
}
func main() {
data := `<element attr1="1" attr2="2"></element>`
v := Element{}
err := xml.Unmarshal([]byte(data), &v)
if err != nil {
fmt.Printf("error: %v", err)
return
}
fmt.Printf("%#v\n", v)
}
这main.Element{Attrs:main.Attrs{Attr1:1, Attr2:2}}按预期打印。
如果匿名结构成员被赋予一个名字,v.Attr1并且v.Attr2没有被解组。
type Element struct {
AttrGroup Attrs
}
在这种情况下,在 struct 成员上使用的正确标签是什么?
猛跑小猪
相关分类