Lecture de fichiers JSON en tant qu'objets JSON dans Go
Pour lire un fichier JSON en tant qu'objet JSON dans Go, il est crucial de comprendre le concept de pointeurs et d'assertion de type.
Lecture du fichier JSON
plan, err := ioutil.ReadFile(filename) if err != nil { log.Fatal(err) }
Décomposition des données
Pour stocker le JSON objet, vous aurez besoin d'un pointeur vers une variable, comme spécifié dans la documentation Go :
var data interface{} if err := json.Unmarshal(plan, &data); err != nil { log.Fatal(err) }
Ceci stocke l'objet JSON dans l'emplacement mémoire pointé par data.
Accès à l'objet JSON
Étant donné que les données sont une interface, vous devez utiliser l'assertion de type pour accéder à ses valeurs sous-jacentes :
switch data := data.(type) { case map[string]interface{}: // Loop through the map as a JSON object for key, value := range data { fmt.Println(key, value) } case []interface{}: // Loop through the slice as a JSON array for _, value := range data { fmt.Println(value) } default: // Handle other types as needed }
Marshaling pour le débogage
Si vous devez afficher l'objet JSON sous forme de chaîne à des fins de débogage, vous pouvez utiliser :
jsonString, err := json.Marshal(data) if err != nil { log.Fatal(err) } fmt.Println(string(jsonString))
Remarque :
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!