Maison >développement back-end >Golang >Comment convertir des données JSON en structure dans Golang ?
Dans Golang, les données JSON peuvent être converties en structure en suivant les étapes suivantes : définissez une structure avec des noms de champs qui correspondent aux noms d'attributs JSON et utilisez la balise json pour spécifier les noms de champs JSON. Utilisez la fonction json.Unmarshal du package encoding/json pour analyser une chaîne JSON et la convertir en pointeur vers une structure. Vérifiez les erreurs d'analyse. Accédez aux champs de structure pour extraire des données.
Comment convertir des données JSON en structure dans Golang
Introduction
Golang fournit le package encoding/json
pour traiter facilement les données JSON. Il vous permet de convertir les données JSON en structures, ce qui facilite l'accès et la manipulation des données JSON. encoding/json
包来方便地处理 JSON 数据。它允许您将 JSON 数据转换为结构体,从而可以轻松地访问和操作 JSON 数据。
实战案例
假设您有一个 JSON 字符串:
{ "name": "John Doe", "age": 30, "occupation": "Software Engineer" }
并希望将其转换为一个结构体。以下是步骤:
type Person struct { Name string `json:"name"` Age int `json:"age"` Occupation string `json:"occupation"` }
struct
关键字创建了一个新的结构体类型。json
标签指定了 JSON 字段名称。import "encoding/json" var jsonStr = `{ "name": "John Doe", "age": 30, "occupation": "Software Engineer" }` var person Person err := json.Unmarshal([]byte(jsonStr), &person) if err != nil { // 处理错误 }
json.Unmarshal
函数解析 JSON 字符串并将其转换为指向结构体的指针。jsonStr
是 JSON 字符串。person
是目标结构体。Unmarshal
将返回该错误。fmt.Println(person.Name) // "John Doe" fmt.Println(person.Age) // 30 fmt.Println(person.Occupation) // "Software Engineer"
注意
json
标签。Unmarshal
struct
crée un nouveau type de structure. 🎜json
spécifie le nom du champ JSON. 🎜🎜json.Unmarshal
analyse la chaîne JSON et la convertit en pointeur vers une structure. 🎜jsonStr
est une chaîne JSON. 🎜person
est la structure cible. 🎜Unmarshal
renverra cette erreur. 🎜🎜json
. 🎜Unmarshal
. 🎜🎜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!