Maison > développement back-end > Golang > Comment analyser efficacement un tableau JSON dans une structure de données Go ?

Comment analyser efficacement un tableau JSON dans une structure de données Go ?

DDD
Libérer: 2024-12-22 01:40:30
original
340 Les gens l'ont consulté

How to Efficiently Parse a JSON Array into a Go Data Structure?

Analyse d'un tableau JSON dans une structure de données dans Go

Lorsque vous traitez des données JSON structurées sous forme de tableau, l'utilisation d'une carte Go peut rencontrer des limites. Une approche plus appropriée consiste à définir une structure de données personnalisée pour s'adapter au format spécifique des données.

Un exemple de tableau JSON :

[
  {"a" : "1"},
  {"b" : "2"},
  {"c" : "3"}
]
Copier après la connexion

Pour analyser ce tableau, un type personnalisé peut être défini :

type mytype []map[string]string
Copier après la connexion

Ce type représente un tableau de cartes, où chaque élément de carte correspond à un objet dans le JSON array.

Voici comment analyser le tableau JSON dans le type personnalisé :

package main

import (
    "encoding/json"
    "fmt"
    "io/ioutil"
    "log"
)

func main() {
    var data mytype
    file, err := ioutil.ReadFile("test.json")
    if err != nil {
        log.Fatal(err)
    }
    err = json.Unmarshal(file, &data)
    if err != nil {
        log.Fatal(err)
    }
    fmt.Println(data)
}
Copier après la connexion

En lisant le fichier et en décomposant son contenu dans la variable de données de type mytype, le tableau JSON est correctement analysé dans une structure Go. La variable data peut ensuite être utilisée pour accéder aux objets individuels du tableau.

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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal