"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 dégrouper les formats JSON inconnus dans Go ?

Comment puis-je dégrouper les formats JSON inconnus dans Go ?

Publié le 2024-12-23
Parcourir:521

How Can I Unmarshal Unknown JSON Formats in Go?

Démarrer les données JSON de format inconnu

Introduction

Vos données JSON suivent un format inconnu, ce qui présente un défi de démarchage. dans une structure GoLang. Cet article vous guidera à travers les étapes permettant de gérer efficacement ce scénario.

Démarrer avec map[string]interface{}

Puisque vous ne connaissez pas les clés de avancez, vous pouvez utiliser map[string]interface{} pour désorganiser votre charge utile JSON. Cela vous permet de stocker les paires clé-valeur sous forme de carte sans spécifier les types de valeurs.

var grades map[string]interface{}

err := json.Unmarshal([]byte(jsonString), &grades)
fmt.Println(err)

fmt.Printf("%#v\n", grades)

Cela affichera les données JSON sous la forme d'une carte imbriquée de chaînes vers les interfaces, ce qui peut être utile pour inspecter et traiter les données de manière dynamique.

Utilisation de json : balise "-"

Vous pouvez exclure certains champs du marshaling/unmarshaling JSON à l'aide de l'option json : balise "-". Cela peut être utile si vous souhaitez garder certaines données privées ou éviter les références circulaires.

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

var gradesData GradeData
err := json.Unmarshal([]byte(jsonString), &gradesData.Grades)
fmt.Println(err)

fmt.Printf("%#v\n", gradesData)

Dans cet exemple, le champ Notes ne sera pas inclus dans la représentation JSON de notesData, mais il peut toujours être utilisé pour stocker et récupérer le JSON data.

Conclusion

En utilisant map[string]interface{} et la balise json:"-", vous pouvez réussir désorganisez les données JSON de format inconnu dans les structures GoLang. Cette approche vous permet de gérer avec élégance les structures JSON dynamiques et inconnues.

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