Menghuraikan Tatasusunan JSON ke dalam Struktur Data Go
Apabila berurusan dengan data JSON yang mengandungi tatasusunan, mungkin sukar untuk memilih struktur data Go yang sesuai untuk menghuraikan. Sebagai contoh, jika fail menyimpan tatasusunan pasangan nilai kunci, percubaan untuk menggunakan rentetan[rentetan]peta mungkin mengakibatkan ralat seperti "tidak boleh menyahmarshal tatasusunan ke dalam nilai Go jenis main.data."
Penyelesaiannya terletak pada mengenal pasti struktur JSON dengan tepat. Walaupun contoh yang diberikan kelihatan seperti tatasusunan, ia sebenarnya adalah tatasusunan peta. Fail itu sebaliknya harus menyerupai yang berikut untuk memadankan struktur rentetan[rentetan] peta:
{ "a":"1", "b":"2", "c":"3" }
Pertimbangkan coretan kod berikut yang menunjukkan menghuraikan tatasusunan peta ke dalam struct Go:
package main import ( "encoding/json" "fmt" "io/ioutil" "log" ) type mytype []map[string]string func main() { var data mytype file, err := ioutil.ReadFile("test.json") if err != nil { log.Fatal(err) } err = json.Unmarshal(file, &data) if err != nil { log.Fatal(err) } fmt.Println(data) }
Apabila anda menjalankan kod ini dengan fail JSON yang sah, ia akan berjaya menghuraikan data ke dalam struktur yang dikehendaki, memberikan anda akses kepada pasangan nilai kunci dalam tatasusunan.
Atas ialah kandungan terperinci Bagaimanakah Saya Menghuraikan Tatasusunan Peta JSON ke dalam Go Structs?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!