Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk Menghuraikan Tatasusunan JSON dalam Go Menggunakan Pakej `json`?
Menghuraikan Tatasusunan JSON dalam Go dengan Pakej JSON
Masalah: Bagaimanakah anda boleh menghuraikan rentetan JSON yang mewakili tatasusunan dalam Go menggunakan pakej json?
Kod Contoh:
Pertimbangkan kod Go berikut:
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) }
Penjelasan:
Kod yang disediakan mentakrifkan jenis JsonType dengan tatasusunan daripada rentetan. Ia kemudiannya cuba untuk menyahmarshal rentetan JSON ke dalam medan tatasusunan contoh JsonType. Walau bagaimanapun, terdapat masalah dengan kod.
Penyelesaian:
Nilai pulangan Unmarshal ialah ralat. Kod ini pada asalnya mencetak ralat ini dan bukannya tatasusunan yang tidak terkawal. Untuk membetulkannya, anda boleh menukar kod kepada:
err := json.Unmarshal([]byte(dataJson), &arr)
Selain itu, anda boleh memudahkan kod dengan terus menyahmarshaling ke dalam kepingan tatasusunan tanpa menggunakan jenis tersuai:
var arr []string _ = json.Unmarshal([]byte(dataJson), &arr)
Ini kod memberikan kepingan yang tidak dimarshaled kepada arr. Garis bawah sebelum tugasan menindas nilai ralat, yang tidak digunakan dalam kod ini.
Dengan menggunakan pakej json dengan berkesan, anda boleh menghuraikan tatasusunan JSON dengan mudah dalam Go.
Atas ialah kandungan terperinci Bagaimana untuk Menghuraikan Tatasusunan JSON dalam Go Menggunakan Pakej `json`?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!