Von Menschen lesbare JSON-Ausgabe in Go
In Go ist es möglich, von Menschen lesbare JSON-Ausgabe zu generieren, ohne dass ein externer JQ erforderlich ist Verpackung. Das Paket „encoding/json“ bietet integrierte Funktionen zum Verschönern der JSON-Ausgabe.
Verwenden von json.MarshalIndent() oder json.Encoder.SetIndent()
Der JSON. Die Funktion MarshalIndent() formatiert einen Go-Wert als JSON-Zeichenfolge und rückt ihn entsprechend dem angegebenen Präfix und Einzug ein Zeichen.
Um beispielsweise eine Karte als JSON zu formatieren:
m := map[string]interface{}{"id": "uuid1", "name": "John Smith"} data, err := json.MarshalIndent(m, "", " ") if err != nil { panic(err) } fmt.Println(string(data))
Ausgabe:
{ "id": "uuid1", "name": "John Smith" }
Sie können auch json.Encoder.SetIndent() verwenden Methode zum Einrücken der Ausgabe eines Encoders.
Verwenden json.Indent()
Wenn Sie eine JSON-Zeichenfolge haben, die Sie formatieren möchten, können Sie die Funktion json.Indent() verwenden:
src := `{"id":"uuid1","name":"John Smith"}` dst := &bytes.Buffer{} if err := json.Indent(dst, []byte(src), "", " "); err != nil { panic(err) } fmt.Println(dst.String())
Ausgabe:
{ "id": "uuid1", "name": "John Smith" }
Anpassen der Einrückung
Die Einrückungszeichen können angepasst werden basierend auf Ihren Vorlieben. Standardmäßig ist das Präfix eine leere Zeichenfolge und der Einzug ein einzelnes Leerzeichen. Sie können diese Standardeinstellungen überschreiben, um eine JSON-Ausgabe mit dem gewünschten Einrückungsstil zu erstellen.
Das obige ist der detaillierte Inhalt vonWie kann ich in Go eine für Menschen lesbare JSON-Ausgabe generieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!