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
Linda Hamiltonasal
2024-11-12 04:25:02278semak imbas

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"`
}

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 . .

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!

Kenyataan:
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