Analyse des tableaux JSON dans Go avec le package JSON
Problème : Comment analyser une chaîne JSON représentant un tableau dans Go en utilisant le package json ?
Code Exemple :
Considérons le code Go suivant :
type JsonType struct { Array []string } func main() { dataJson := `["1", "2", "3"]` arr := JsonType{} unmarshaled := json.Unmarshal([]byte(dataJson), &arr.Array) log.Printf("Unmarshaled: %v", unmarshaled) }
Explication :
Le code fourni définit un type JsonType avec un tableau de cordes. Il tente ensuite de désorganiser une chaîne JSON dans le champ de tableau d'une instance JsonType. Cependant, il y a un problème avec le code.
Solution :
La valeur de retour d'Unmarshal est une erreur. Le code imprimait initialement cette erreur au lieu du tableau non marshalé. Pour résoudre ce problème, vous pouvez modifier le code en :
err := json.Unmarshal([]byte(dataJson), &arr)
De plus, vous pouvez simplifier le code en le désassemblant directement dans la tranche de tableau sans utiliser de type personnalisé :
var arr []string _ = json.Unmarshal([]byte(dataJson), &arr)
Ceci le code attribue la tranche non marshalée à l'arr. Le trait de soulignement avant l'affectation supprime la valeur d'erreur, qui n'est pas utilisée dans ce code.
En utilisant efficacement le package json, vous pouvez facilement analyser les tableaux JSON dans Go.
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!