Maison > Article > développement back-end > Comment analyser un tableau JSON dans Go ?
Comment analyser un tableau JSON dans Go
Dans Go, le package encoding/json prend en charge la désorganisation des données JSON dans les structures Go. Pour analyser un tableau JSON, vous pouvez utiliser les étapes suivantes :
Définir une structure Go : Définir une structure qui représente la forme des éléments individuels dans le JSON tableau. Par exemple, si le tableau JSON contient des objets avec des champs de nom et de prix, vous définirez la structure suivante :
type PublicKey struct { Name string Price string }
Remarque : Assurez-vous que les noms de champ dans la structure correspondent au champ noms dans le tableau JSON.
Créez une tranche de la structure : Créez une tranche du type de structure défini pour contenir les données analysées :
var keys []PublicKey
Désorganisez le JSON : Utilisez la fonction json.Unmarshal() pour démarshaler le tableau JSON dans la tranche de structures :
err := json.Unmarshal([]byte(jsonStr), &keys)
où jsonStr est les données JSON à analysé.
Gérez toutes les erreurs : Vérifiez les erreurs rencontrées lors du démarchage. Si une erreur survient, elle sera stockée dans la variable err :
if err != nil { // Handle the error }
Accéder aux données analysées : Une fois le tableau JSON analysé, vous pouvez accéder les éléments individuels de la tranche de structs :
for _, key := range keys { fmt.Println(key.Name, key.Price) }
Exemple :
Le code suivant montre comment analyser un tableau JSON en suivant les étapes ci-dessus :
package main import ( "encoding/json" "fmt" ) type PublicKey struct { Name string Price string } func main() { jsonStr := `[{"name":"Galaxy Nexus", "price":"3460.00"},{"name":"Galaxy Nexus", "price":"3460.00"}]` var keys []PublicKey err := json.Unmarshal([]byte(jsonStr), &keys) if err == nil { for _, key := range keys { fmt.Println(key.Name, key.Price) } } else { fmt.Println(err) } }
Sortie :
Galaxy Nexus 3460.00 Galaxy Nexus 3460.00
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!