Rumah > pembangunan bahagian belakang > Golang > Mengapa Saya Tidak Boleh Menghuraikan JSON ke dalam My Go Struct?

Mengapa Saya Tidak Boleh Menghuraikan JSON ke dalam My Go Struct?

Linda Hamilton
Lepaskan: 2024-11-12 04:25:02
asal
251 orang telah melayarinya

Why Can't I Parse JSON into My Go Struct?

Menghuraikan JSON ke dalam Go Structs

Menghuraikan JSON ke dalam struct Go membolehkan akses mudah kepada konfigurasi data berstruktur. Walaupun coretan kod yang anda berikan menyusun tanpa ralat, ia gagal mengisi medan struct dengan nilai yang betul.

Menangani Isu

Masalahnya terletak pada status eksport elemen struktur anda. Dalam Go, untuk elemen struct boleh diakses semasa pengekodan/penyahkodan oleh pakej JSON, ia mesti bermula dengan huruf besar. Ini memastikan elemen boleh diakses di luar pakejnya.

Membetulkan Kod

Untuk menyelesaikan isu, anda perlu membuat huruf pertama setiap elemen struct huruf besar . Kod yang diperbetulkan akan kelihatan seperti ini:

var settings struct {
    ServerMode bool `json:"serverMode"`
    SourceDir  string `json:"sourceDir"`
    TargetDir  string `json:"targetDir"`
}
Salin selepas log masuk

Dengan menggunakan huruf besar nama elemen struktur, anda pada asasnya mengeksportnya, menjadikannya boleh diakses untuk pengekodan dan penyahkodan JSON. Sekarang, apabila penghurai JSON menemui nama medan yang sepadan dalam fail JSON, ia akan menetapkan nilai yang dihuraikan dengan betul kepada medan struct.

Output yang Dijangka

Selepas membuat pembetulan ini, program anda kini harus mencetak nilai tetapan yang betul seperti yang dinyatakan dalam fail config.json:

true . .
Salin selepas log masuk

Atas ialah kandungan terperinci Mengapa Saya Tidak Boleh Menghuraikan JSON ke dalam My Go Struct?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan