Rumah > Artikel > pembangunan bahagian belakang > Adakah Pakej `pengekodan/json` Go Menawarkan Cara untuk Memformat Output JSON untuk Kebolehbacaan Manusia?
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)) }
Output:
{ "id": "uuid1", "name": "John Smith" }
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()) }
Output:
{ "id": "uuid1", "name": "John Smith" }
Penyesuaian:
Anda boleh menyesuaikan lekukan menggunakan awalan dan parameter inden bagi fungsi inden. Contohnya:
data, err := json.MarshalIndent(m, "+", "-") if err != nil { panic(err) }
Output:
{ +--"id": "uuid1", +--"name": "John Smith" +}
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!