Mari kita lihat penggunaan golang gjson
Apr 06, 2023 am 08:56 AMDalam bidang pembangunan perisian moden, pemprosesan data dan penghuraian data adalah tugas yang sering dihadapi oleh pembangun. Dengan kemunculan dan pembangunan berterusan format data baharu, cara menghurai dan memproses data ini dengan cekap telah menjadi satu cabaran. Dalam hal ini, golang gjson ialah alat yang sangat berguna yang boleh membantu kami menghuraikan data JSON dengan mudah.
Pengenalan kepada gjson
gjson ialah pustaka bahasa go untuk menghuraikan data JSON. Ia melaksanakan fungsi menghuraikan data JSON dengan cepat melalui API berantai. gjson ringkas dan mudah digunakan kerana ia hanya memfokuskan pada bahagian data JSON dan bukannya keseluruhan dokumen. Selain itu, gjson juga menyokong pertanyaan laluan JSON. Ia boleh memberikan kemudahan yang hebat apabila menghuraikan data JSON yang kompleks.
Contoh penggunaan mudah
Mari kita lihat cara menggunakan gjson dalam program golang. Mula-mula kita perlu mengimport perpustakaan gjson:
import "github.com/tidwall/gjson"
Kemudian, kita boleh menghuraikan data JSON dengan cepat dengan:
package main import ( "fmt" "github.com/tidwall/gjson" ) func main(){ data := `{"name": "golang", "version": "1.15.8"}` value := gjson.Get(data, "version") fmt.Printf("version: %s\n", value.String()) }
Dalam kod di atas, kami menggunakan gjson.Get () fungsi mendapatkan semula nilai bernama "versi" dalam data JSON. Kita boleh menukar jenis nilai kepada rentetan untuk output pada konsol.
Contoh penggunaan yang rumit
Mari kita lihat contoh yang lebih kompleks untuk menghuraikan data JSON yang kompleks melalui gjson. Pertimbangkan fail JSON seperti berikut:
{ "name": "Jack", "age": 30, "hobbies": [ { "name": "reading", "level": 2 }, { "name": "music", "level": 3 }, { "name": "swimming", "level": 1 } ], "contact": { "email": "jack@example.com", "phone": { "home": "123456", "mobile": "78901234" } } }
Kita boleh menggunakan gjson untuk mengakses pelbagai bahagian data JSON, contohnya untuk mendapatkan elemen tatasusunan pertama bahagian hobi, kodnya adalah seperti berikut:
package main import ( "fmt" "github.com/tidwall/gjson" ) func main() { data := `{"name": "Jack", "age": 30, "hobbies": [{"name": "reading", "level": 2}, {"name": "music", "level": 3}, {"name": "swimming", "level": 1}], "contact": {"email": "jack@example.com", "phone": {"home": "123456", "mobile": "78901234"}}}` hobbies := gjson.Get(data, "hobbies") firstHobby := gjson.Get(hobbies.String(), "#0") fmt.Printf("first hobby: %s\n", firstHobby.String()) }
Di atas Dalam kod, #0
mewakili elemen pertama tatasusunan, #1
mewakili elemen kedua, dan seterusnya. Kami juga boleh memilih semua elemen tatasusunan mengikut kad bebas *
. Sebagai contoh, anda boleh mendapatkan semua tahap minat menggunakan kod berikut:
package main import ( "fmt" "github.com/tidwall/gjson" ) func main() { data := `{"name": "Jack", "age": 30, "hobbies": [{"name": "reading", "level": 2}, {"name": "music", "level": 3}, {"name": "swimming", "level": 1}], "contact": {"email": "jack@example.com", "phone": {"home": "123456", "mobile": "78901234"}}}` levels := gjson.Get(data, "hobbies.*.level") fmt.Printf("hobby levels: %s\n", levels.String()) }
Dalam contoh di atas, kami menggunakan .
untuk menunjukkan traversal yang mendalam dan bukannya hanya melintasi elemen anak serta-merta.
gjson boleh membaca data JSON bersarang atau data berstruktur tidak teratur dengan mudah dan APInya sangat intuitif dan mudah dibaca. Jika anda mahukan lebih banyak maklumat dan contoh, sila lawati [tapak web rasmi gjson](https://github.com/tidwall/gjson).
Ringkasan
Artikel ini memperkenalkan penggunaan utama golang gjson, termasuk kes penggunaan mudah dan kes penggunaan kompleks. Menggunakan gjson boleh meningkatkan kecekapan penulisan kod kami semasa memproses data JSON. gjson ialah salah satu perpustakaan penghuraian JSON yang paling mudah dan paling mudah digunakan dalam komuniti golang. Salah satu perkara hebat tentang gjson ialah APInya agak mudah dan boleh digunakan dengan perpustakaan lain untuk membina aplikasi. Oleh kerana gjson boleh memberikan prestasi penghuraian JSON yang cekap, lebih mudah untuk mengekalkan prestasi cemerlang dalam senario penghuraian data besar.
Atas ialah kandungan terperinci Mari kita lihat penggunaan golang gjson. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Artikel Panas

Alat panas Tag

Artikel Panas

Tag artikel panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

GO Language Pack Import: Apakah perbezaan antara garis bawah dan tanpa garis bawah?

Bagaimana untuk melaksanakan pemindahan maklumat jangka pendek antara halaman dalam kerangka beego?

Bagaimana saya menulis objek dan stub untuk ujian di GO?

Bagaimana saya boleh menggunakan alat pengesanan untuk memahami aliran pelaksanaan aplikasi saya?

Bagaimana cara menukar senarai hasil pertanyaan mysql ke dalam slice struktur tersuai dalam bahasa Go?

Bagaimana anda menulis ujian unit di GO?

Bagaimana cara menulis fail dalam bahasa Go dengan mudah?

Bagaimana saya boleh menentukan kekangan jenis tersuai untuk generik di GO?
