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

如何在 Go 中編組動態 XML 元素名稱?

Mary-Kate Olsen
發布: 2024-11-26 17:23:09
原創
337 人瀏覽過

How Can I Marshal Dynamic XML Element Names in Go?

在Golang 中編組動態XML 元素名稱

問題

XML 檔案包含多個具有相似結構但名稱不同的元素(例如,PERSON和寄件者)。目標是定義一個允許動態元素名稱的結構。

解決方案

雖然最初嘗試使用XMLName 屬性設定元素名稱沒有成功,但可以實現透過利用以下策略來實現這一點:

  • 使用xml. Name 類型作為XMLName:根據文檔,XMLName 欄位需要xml.Name type.
type Person struct {
    XMLName xml.Name
    E1 string `xml:"ELEM1"`
    // ...
}
登入後複製
  • 透過 xml.Name.Local 動態設定元素名稱:若要指派動態元素名稱,請使用 xml.Name 的 Local 欄位。
person := Person { 
    XMLName: xml.Name { Local: "Person" },
    // ...
}
登入後複製
  • 用於 XML 包含的匯出欄位:確保代表元素的欄位(例如本範例中的 E1)以大寫字母開頭匯出。這允許它們包含在 XML 輸出中。

範例

請參考以下 Playground 範例以取得完整的實作:http://play.golang.org/p/ bzSutFF9Bo.

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

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