假设我有以下 xml:
<main symbol="X">
<blockA main_score="3">
<a score="0"/>
</blockA>
<blockB>
<b id="3" name="Mike"/>
</blockB>
</main>
我想定义以下结构(空白标签是我要解决的部分):
type Result struct {
XMLName xml.Name `xml:"main"`
Symbol string `xml:"symbol,attr"`
MainScore int
Score int
Id int
Name string
}
我想得到的是以下结构:
symbol: X
main_score: 3
score: 0
id: 3
name: Mike
那么如何定义进入内部元素(blockA
, blockB
)并达到其属性值(main_score
)和内部元素(score
, id
, name
)的 XML 标记?
我可以通过定义另一个结构并将它们嵌入到父Result
结构中来解决这里的问题。但是,不使用嵌入结构并仅在主结构中定义结构标签并让它处理整个元素是否仍然可行?
谢谢。