Maison > développement back-end > Golang > Comment désorganiser JSON avec une clé dynamique dans Go ?

Comment désorganiser JSON avec une clé dynamique dans Go ?

Mary-Kate Olsen
Libérer: 2024-12-09 12:16:15
original
575 Les gens l'ont consulté

How to Unmarshal JSON with a Dynamic Key in Go?

JSON Unmarshal avec une clé dynamique

Unmarshall JSON avec une clé dynamique qui ne peut pas être capturée en tant que champ statique dans une structure peut être réalisé en Allez utiliser un map.

Exemple :

Considérez les données JSON suivantes :

{
 "any string" : {
   "a_known_string" : "some value",
   "b_known_string" : "another value" 
 }
}
Copier après la connexion

Et la structure :

type X struct {
    A string `json:"a_known_string"`
    B string `json:"b_known_string"`
}
Copier après la connexion

Solution :

Pour capturer la clé dynamique ainsi que la connue valeurs, utilisez une carte au lieu d'une structure :

import "encoding/json"

var m map[string]X
err := json.Unmarshal([]byte(jsonStr), &m)
if err != nil {
    // Handle error
}

// Access the data using the dynamic key
dynamicKeyData := m["any string"]
Copier après la connexion

Dans ce scénario, le type map[string]X permet à la clé dynamique "n'importe quelle chaîne" d'être capturée avec les valeurs connues dans le X structure.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal