我必须解析遗留系统的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,但这很丑陋。有没有更好的办法?
相关分类