首頁 > 後端開發 > Golang > 如何在 Go Structs 中動態設定 XML 元素名稱?

如何在 Go Structs 中動態設定 XML 元素名稱?

Susan Sarandon
發布: 2024-11-25 15:34:10
原創
634 人瀏覽過

How to Dynamically Set XML Element Names in Go Structs?

在Go 中動態定義XML 元素名稱

考慮一個XML 文件,其中兩個元素具有相同的結構(元素名稱除外) 。為了在 Go 中表示這些元素,需要一個具有動態元素名稱的結構體。

type Person struct {
    XMLName string `xml:"???` // How to make this dynamic?
    E1 string `xml:"ELEM1"`
    E2 string `xml:"ELEM2"`
    E3 string `xml:"ELEM3"`
    E4 string `xml:"ELEM4"`
}
登入後複製

這裡引入了 xml.Name 型。它的Local 欄位允許動態設定元素名稱:

type Person struct {
    XMLName xml.Name
    E1 string `xml:"ELEM1"`
    // ...
}
登入後複製

在運作時,可以指派元素名稱:

person := Person{
    XMLName: xml.Name{Local: "Person"},
    // ...
}
登入後複製

請注意,結構體欄位(E1 - E4)必須匯出(以大寫字母開頭)才能包含在XML 輸出中。

有關實際範例,請參閱以下內容遊樂場:

http://play.golang.org/p/bzSutFF9Bo

以上是如何在 Go Structs 中動態設定 XML 元素名稱?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板