Maison > développement back-end > Golang > Comment désorganiser les données JSON avec des clés et des valeurs inconnues dans Go ?

Comment désorganiser les données JSON avec des clés et des valeurs inconnues dans Go ?

Patricia Arquette
Libérer: 2024-12-01 09:34:11
original
651 Les gens l'ont consulté

How to Unmarshal JSON Data with Unknown Keys and Values in Go?

Désagrégation des données JSON de format inconnu

Lorsque vous travaillez avec des charges utiles JSON, il peut être difficile de gérer des données avec un format inconnu. Cette situation se produit lorsque les clés et les valeurs au sein de la structure JSON ne sont pas prédéfinies. Pour résoudre ce problème, Go propose plusieurs approches pour démêler les formats inconnus.

Dans les données JSON fournies, les clés représentent les sujets et les valeurs sont des tableaux de notes des étudiants. Pour analyser efficacement ces données, nous pouvons utiliser les techniques suivantes :

Option 1 : Utilisation de l'interface map[string]{}

Si les clés sont entièrement inconnues, vous peut utiliser une map[string]interface{} pour désorganiser la charge utile JSON. Cette méthode crée une carte où les clés sont des chaînes et les valeurs sont des interfaces représentant les données non marshalées.

var grades map[string]interface{}

err := json.Unmarshal([]byte(jsonString), &grades)
Copier après la connexion

Option 2 : Utiliser une structure personnalisée

Si vous avez une structure spécifique dans laquelle vous souhaitez représenter les données, vous pouvez créer une structure personnalisée et ignorer les clés inconnues lors du démarshalage à l'aide de la balise json:"-" . Le champ Notes dans la structure GradeData contiendra les données non marshalées sous forme d'interface map[string]{}.

type GradeData struct {
    Grades map[string]interface{} `json:"-"`
}

gradesData := GradeData{}
err := json.Unmarshal([]byte(jsonString), &gradesData.Grades)
Copier après la connexion

En utilisant l'une ou l'autre de ces approches, vous pouvez efficacement désorganiser les données JSON de format inconnu et accéder au données dans Go. Il est important de choisir la méthode qui correspond le mieux aux exigences de votre candidature.

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