"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment puis-je unmarshal JSON avec une clé dynamique en Go?

Comment puis-je unmarshal JSON avec une clé dynamique en Go?

Publié le 2025-02-11
Parcourir:529

How Can I Unmarshal JSON with a Dynamic Key in Go?

clés dynamique Unmarshaling dans json avec go

Lorsque vous travaillez avec les données JSON, il peut être difficile de dénué Les touches sont dynamiques et ne peuvent pas être directement mappées à un nom de champ dans la structure. Pour résoudre ce problème, une solution pratique peut être trouvée dans Golang.

Étant donné une structure définie:

type X struct {
  A string `json:"a_known_string"`
  B string `json:"b_known_string"`
}

et un exemple de chaîne JSON:

{
  "any string": {
    "a_known_string": "some value",
    "b_known_string": "another value"
  }
}

Pour capturer à la fois la clé connue et dynamique dans le json, une carte peut être utilisée:

var m map[string]X
err := json.Unmarshal([]byte(jsnStr), &m)

Cette approche permet le stockage de plusieurs objets sous une seule clé dynamique, offrant une flexibilité dans la gestion des données.

an Un exemple de terrain de jeu peut être trouvé [ici] (https://play.golang.org/p/jh-galueo7n).

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3