„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie kann ich unbekannte JSON-Formate in Go entmarshalieren?

Wie kann ich unbekannte JSON-Formate in Go entmarshalieren?

Veröffentlicht am 23.12.2024
Durchsuche:288

How Can I Unmarshal Unknown JSON Formats in Go?

Unmarshalling von JSON-Daten unbekannten Formats

Einführung

Ihre JSON-Daten haben ein unbekanntes Format, was eine Herausforderung beim Unmarshalling darstellt es in eine GoLang-Struktur. Dieser Artikel führt Sie durch die Schritte zur effektiven Bewältigung dieses Szenarios.

Unmarshalieren mit Map[string]interface{}

Da Sie die Schlüssel nicht kennen Im Voraus können Sie „map[string]interface{}“ verwenden, um Ihre JSON-Nutzlast zu entmarshalieren. Dadurch können Sie die Schlüssel-Wert-Paare als Karte speichern, ohne die Typen der Werte anzugeben.

var grades map[string]interface{}

err := json.Unmarshal([]byte(jsonString), &grades)
fmt.Println(err)

fmt.Printf("%#v\n", grades)

Dadurch werden die JSON-Daten als verschachtelte Zuordnung von Zeichenfolgen zu Schnittstellen ausgegeben, was für die dynamische Überprüfung und Verarbeitung der Daten nützlich sein kann.

Verwenden von json:"-" Tag

Sie können bestimmte Felder vom JSON-Marshalling/Unmarshaling ausschließen Verwenden des json:"-"-Tags. Dies kann nützlich sein, wenn Sie einige Daten privat halten oder Zirkelverweise vermeiden möchten.

type GradeData struct {
    Grades map[string]interface{} `json:"-"`
}

var gradesData GradeData
err := json.Unmarshal([]byte(jsonString), &gradesData.Grades)
fmt.Println(err)

fmt.Printf("%#v\n", gradesData)

In diesem Beispiel wird das Feld „Grades“ nicht in die JSON-Darstellung von gradesData einbezogen, kann aber dennoch zum Speichern und Abrufen des JSON verwendet werden Daten.

Fazit

Durch die Verwendung von map[string]interface{} und dem json:"-"-Tag, Sie können JSON-Daten unbekannten Formats erfolgreich in GoLang-Strukturen entmarshalieren. Mit diesem Ansatz können Sie elegant mit dynamischen und unbekannten JSON-Strukturen umgehen.

Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3