作者热门文章
- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
我为其导出 XML 的程序似乎希望 xml 标签按照特定顺序排列,如下例所示
<xml>
<tagType1>data 1</tagType1>
<tagType2>data 2</tagType2>
<tagType1>data 3</tagType1>
<tagType2>data 4</tagType2>
</xml>
在 go 中,我编码成如下所示的结构
type xml struct {
TagType1 []string `xml:"tagType1"`
TagType2 []string `xml:"tagType2"`
}
当我将其编码退出时,它会对预期的标签进行排序,但这不是我需要的。
<xml>
<tagType1>data 1</tagType1>
<tagType1>data 3</tagType1>
<tagType2>data 2</tagType2>
<tagType2>data 4</tagType2>
</xml>
有没有办法使用 encoding/xml 包来重现第一个示例中的输出?顺序不同。我读取了一个包含特定命令的 xml 文件,修改了数据并编码退出。我需要保留标签顺序。
最佳答案
你应该能够使用这样的东西:
type xml struct {
Item []ItemStruct `xml:",any"`
}
type ItemStruct struct {
XMLName xml.Name
Value string `xml:",chardata"`
}
这样你可以保持顺序,但你需要通过 Item[i].XMLName
从每个项目中获取元素名称
关于xml - 如何从 marshal 重新排序 xml 标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57928065/
我是一名优秀的程序员,十分优秀!