如标题所示,我试图将XML直接解组到地图中,而不必先解组为结构,然后将结构转换为地图。我正在处理相当大的数据集,并且双重转换所花费的时间比预期的要多。
如果有人能对此提供任何指导,将不胜感激。
XML:重复classAccesses,还有其他一些元素。
<classAccesses> <apexClass>AccountRelationUtility</apexClass> <enabled>true</enabled> </classAccesses>
我当前的结构:我首先解析出每个标头元素,然后使用子元素创建一个新结构
type classAccesses struct { ApexClass string `xml:"apexClass"` Enabled string `xml:"enabled"` } type diffs struct { ClassAccesses []classAccesses `xml:"classAccesses"` }
所需的地图:我想保留diffs结构,但我希望子结构“ ClassAccesses”与下面的地图相似。
map[string]string { "ApexClass": "enabled" }
从Go 1.3开始,无法使用标准Go库将XML文档直接解组到地图中。
这里提供了标准库的XML部分,http://golang.org/pkg/encoding/xml/,没有任何函数可以完全满足您在问题中的要求。
根据您的具体情况,您可能还有其他选择,例如: