我正在導出 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 文件,修改數據并編組返回。我需要保留標簽順序。
1 回答

UYOU
TA貢獻1878條經驗 獲得超4個贊
你應該能夠使用這樣的東西:
type xml struct {
Item []ItemStruct `xml:",any"`
}
type ItemStruct struct {
XMLName xml.Name
Value string `xml:",chardata"`
}
這樣你就可以保持順序,但是你需要通過以下方式從每個項目中獲取元素名稱Item[i].XMLName
- 1 回答
- 0 關注
- 126 瀏覽
添加回答
舉報
0/150
提交
取消