Rumah > pembangunan bahagian belakang > Golang > Adakah Pakej `pengekodan/json` Go Menawarkan Cara untuk Memformat Output JSON untuk Kebolehbacaan Manusia?

Adakah Pakej `pengekodan/json` Go Menawarkan Cara untuk Memformat Output JSON untuk Kebolehbacaan Manusia?

Mary-Kate Olsen
Lepaskan: 2024-11-19 04:13:03
asal
366 orang telah melayarinya

Does Go's `encoding/json` Package Offer a Way to Format JSON Output for Human Readability?

Jq Wrapper for Human-Readable JSON Output in Go

Soalan:

Adakah terdapat Jq wrapper sumber terbuka untuk Go yang boleh menukar output JSON yang boleh dibaca mesin kepada boleh dibaca manusia format?

Jawapan:

Ya, pakej pengekodan/json dalam Go menyediakan sokongan terbina dalam untuk memformat output JSON.

Penyelesaian:

Kod berikut menunjukkan cara menggunakan json.MarshalIndent() untuk mencipta output JSON inden:

import (
    "encoding/json"
    "fmt"
)

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

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

Output:

{
  "id": "uuid1",
  "name": "John Smith"
}
Salin selepas log masuk
Salin selepas log masuk

Jika anda mempunyai rentetan JSON sedia ada, anda boleh menggunakan json.Indent() untuk memformat ia:

import "encoding/json"

func main() {
    src := `{"id":"uuid1","name":"John Smith"}`

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

Output:

{
  "id": "uuid1",
  "name": "John Smith"
}
Salin selepas log masuk
Salin selepas log masuk

Penyesuaian:

Anda boleh menyesuaikan lekukan menggunakan awalan dan parameter inden bagi fungsi inden. Contohnya:

data, err := json.MarshalIndent(m, "+", "-")
if err != nil {
    panic(err)
}
Salin selepas log masuk

Output:

{
+--"id": "uuid1",
+--"name": "John Smith"
+}
Salin selepas log masuk

Atas ialah kandungan terperinci Adakah Pakej `pengekodan/json` Go Menawarkan Cara untuk Memformat Output JSON untuk Kebolehbacaan Manusia?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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