Maison > développement back-end > Golang > le corps du texte

Pourquoi ne puis-je pas analyser JSON dans ma structure Go ?

Linda Hamilton
Libérer: 2024-11-12 04:25:02
original
225 Les gens l'ont consulté

Why Can't I Parse JSON into My Go Struct?

L'analyse de JSON dans les structures Go

L'analyse de JSON dans les structures Go permet un accès pratique aux configurations de données structurées. Bien que l'extrait de code que vous avez fourni se compile sans erreur, il ne parvient pas à remplir les champs de structure avec des valeurs correctes.

Résoudre le problème

Le problème réside dans le statut d'exportation de vos éléments de structure. En Go, pour qu'un élément struct soit accessible lors de l'encodage/décodage par le package JSON, il doit commencer par une lettre majuscule. Cela garantit que l'élément est accessible en dehors de son package.

Correction du code

Pour résoudre le problème, vous devez mettre la première lettre de chaque élément struct en majuscule . Le code corrigé ressemblerait à ceci :

var settings struct {
    ServerMode bool `json:"serverMode"`
    SourceDir  string `json:"sourceDir"`
    TargetDir  string `json:"targetDir"`
}
Copier après la connexion

En mettant en majuscule les noms des éléments struct, vous les exportez essentiellement, les rendant accessibles pour l'encodage et le décodage JSON. Désormais, lorsque l'analyseur JSON rencontre les noms de champs correspondants dans le fichier JSON, il attribuera correctement les valeurs analysées aux champs de structure.

Sortie attendue

Après avoir créé cette correction, votre programme devrait maintenant imprimer les valeurs de paramètres correctes comme spécifié dans le fichier config.json :

true . .
Copier après la connexion

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