ホームページ  >  記事  >  バックエンド開発  >  Go 構造体で XML 要素名を動的に設定する方法

Go 構造体で XML 要素名を動的に設定する方法

Susan Sarandon
Susan Sarandonオリジナル
2024-11-25 15:34:10564ブラウズ

How to Dynamically Set XML Element Names in Go Structs?

Go での XML 要素名の動的定義

要素名を除いて同一構造の 2 つの要素を含む 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 構造体で XML 要素名を動的に設定する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。