Dalam Golang, data JSON boleh ditukar kepada struktur melalui langkah berikut: tentukan struktur dengan nama medan yang sepadan dengan nama atribut JSON dan gunakan teg json untuk menentukan nama medan JSON. Gunakan fungsi json.Unmarshal daripada pakej pengekodan/json untuk menghuraikan rentetan JSON dan menukarnya menjadi penunjuk kepada struktur. Semak ralat penghuraian. Akses medan struktur untuk mengekstrak data.
Cara menukar data JSON kepada struktur dalam Golang
Pengenalan
Golang menyediakan pakej pengekodan/json
untuk memproses data JSON dengan mudah. Ia membolehkan anda menukar data JSON kepada struktur, menjadikannya mudah untuk mengakses dan memanipulasi data 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
mencipta jenis struktur baharu. 🎜json
menentukan nama medan JSON. 🎜🎜fungsi json.Unmarshal
menghuraikan rentetan JSON dan menukarnya Adalah penunjuk kepada struktur. 🎜jsonStr
ialah rentetan JSON. 🎜orang
ialah struktur sasaran. 🎜Unmarshal
akan mengembalikan ralat tersebut. 🎜🎜json
. 🎜Unmarshal
. 🎜🎜Atas ialah kandungan terperinci Bagaimana untuk menukar data JSON kepada struktur dalam Golang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!