【发布时间】:2018-08-03 06:51:18
【问题描述】:
我必须解析遗留系统的 xml 输出,他们出于某种原因认为将值的 ID 添加为标记名称会很聪明。
像这样:
<ValueList>
<ArraySize>2</ArraySize>
<v89BNZMpdlWXkuv>value1</v89BNZMpdlWXkuv>
<v89N83oCrGhI7jh>value2</v89N83oCrGhI7jh>
</ValueList>
我想把它解析成这样的结构:
type ValueList struct {
Values []Value
}
type Value struct {
ID string
Value String
}
我已经开始使用自定义解组功能了
func (vl *ValueList) UnmarshalXML(d *xml.Decoder, start xml.StartElement) error {
...
}
并从xml.Decoder 获取令牌,但这很难看。有没有更好的办法?
【问题讨论】:
-
你试过
xml:",any"吗? -
这就是答案!我不知道
xml:",any"并且玩这个问题太久了:/ 谢谢
标签: xml go xml-parsing