Heim > Backend-Entwicklung > Golang > Wie kann ich JSON-Daten mit Leerzeichen in Schlüsseln mithilfe von „encoding/json' von Go erfolgreich entmarshalieren?

Wie kann ich JSON-Daten mit Leerzeichen in Schlüsseln mithilfe von „encoding/json' von Go erfolgreich entmarshalieren?

Susan Sarandon
Freigeben: 2024-12-23 22:50:12
Original
918 Leute haben es durchsucht

How Can I Successfully Unmarshal JSON Data with Spaces in Keys Using Go's `encoding/json`?

Leerzeichen in JSON-Schlüsseln: Das Unmarshaling-Hindernis überwinden

Das Unmarshaling von JSON-Daten mit Schlüsseln, die Leerzeichen enthalten, kann eine Herausforderung für die Standardkodierung/JSON darstellen Bibliothek in Go. Standardmäßig versucht die Bibliothek, JSON-Schlüssel den Feldnamen ohne Leerzeichen zuzuordnen. Im bereitgestellten Code:

type Animal struct {
    Name  string `json:"Na me"`
    Order string `json:"Order,omitempty"`
}
Nach dem Login kopieren

Der Name-Schlüssel in den JSON-Daten steht in Konflikt mit diesem Muster. Dieser Fehler kann behoben werden, indem die JSON-Tags so geändert werden, dass sie die JSON-Schlüssel genau widerspiegeln:

type Animal struct {
    Name  string `json:"Na me"` // Corrected the space after the colon
    Order string `json:"Order,omitempty"`
}
Nach dem Login kopieren

Wie in der Dokumentation zu „encoding/json“ angegeben ist, sind in JSON-Tags nach dem Doppelpunkt keine Leerzeichen zulässig. Durch Befolgen dieser Anleitung kann der Unmarshaling-Prozess die JSON-Schlüssel korrekt identifizieren und den entsprechenden Feldern in der Animal-Struktur zuordnen. Das Ausführen des korrigierten Codes führt zur erwarteten Ausgabe:

[{Name:Platypus Order:Monotremata} {Name:Quoll Order:Dasyuromorphia}]
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie kann ich JSON-Daten mit Leerzeichen in Schlüsseln mithilfe von „encoding/json' von Go erfolgreich entmarshalieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage