Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk Menjadikan Output JSON Boleh Dibaca Manusia dalam Go?

Bagaimana untuk Menjadikan Output JSON Boleh Dibaca Manusia dalam Go?

DDD
DDDasal
2024-11-20 18:14:15670semak imbas

How to Make JSON Output Human-Readable in Go?

Cara Menjana Output JSON Boleh Dibaca Manusia dalam Go Menggunakan pengekodan/json

Apabila mengeluarkan JSON dalam program Go (dikenali sebagai "foo"), ia mungkin bermanfaat untuk menjadikan keputusan boleh dibaca manusia untuk kebolehtafsiran yang lebih baik. Walaupun adalah perkara biasa untuk menggunakan alat baris perintah jq untuk tujuan ini dengan memaipkan output, artikel ini membentangkan penyelesaian alternatif menggunakan pakej pengekodan/json terbina dalam Go.

Pakej pengekodan/json menyediakan sokongan asli untuk menjana JSON inden tanpa memerlukan alat luaran. Dengan menggunakan fungsi json.MarshalIndent() atau memanggil json.Encoder.SetIndent() (tersedia sejak Go 1.7), anda boleh mencapai hasil yang diingini.

Contohnya, untuk mengesot peta ke dalam JSON yang boleh dibaca:

m := map[string]interface{}{"id": "uuid1", "name": "John Smith"}

data, err := json.MarshalIndent(m, "", "  ")
if err != nil {
    panic(err)
}
fmt.Println(string(data))

Sebagai alternatif, anda boleh menggunakan json.Encoder dengan SetIndent():

enc := json.NewEncoder(os.Stdout)
enc.SetIndent("", "  ")
if err := enc.Encode(m); err != nil {
    panic(err)
}

Anda juga boleh memformat rentetan JSON sedia ada menggunakan json.Indent():

src := `{"id":"uuid1","name":"John Smith"}`

dst := &bytes.Buffer{}
if err := json.Indent(dst, []byte(src), "", "  "); err != nil {
    panic(err)
}
fmt.Println(dst.String())

Parameter awalan dan inden dalam fungsi ini menentukan gaya lekukan. Awalan mendahului setiap baris baharu, manakala inden diulang untuk setiap peringkat sarang.

Dengan memanfaatkan kaedah ini, anda boleh menghasilkan JSON yang boleh dibaca manusia dengan mudah dalam Go tanpa memerlukan alat atau kebergantungan tambahan, meningkatkan kebolehbacaan dan kebolehgunaan output JSON anda.

Atas ialah kandungan terperinci Bagaimana untuk Menjadikan Output JSON Boleh Dibaca Manusia dalam Go?. 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