Heim >Backend-Entwicklung >Golang >Wie entmarshaliere ich JSON-Daten mit unbekannten Schlüsseln und Werten in Go?
Bei der Arbeit mit JSON-Nutzlasten kann es schwierig sein, Daten mit einem unbekannten Format zu verarbeiten. Diese Situation entsteht, wenn die Schlüssel und Werte innerhalb der JSON-Struktur nicht vordefiniert sind. Um dieses Problem zu lösen, bietet Go mehrere Ansätze zum Unmarshaling unbekannter Formate.
In den bereitgestellten JSON-Daten stellen die Schlüssel Fächer dar und die Werte sind Arrays von Schülernoten. Um diese Daten effektiv zu entpacken, können wir die folgenden Techniken nutzen:
Option 1: Verwendung der Map[string]-Schnittstelle{}
Wenn die Schlüssel völlig unbekannt sind, Sie kann eine Map[string]interface{} verwenden, um die JSON-Nutzlast zu entmarshalieren. Diese Methode erstellt eine Karte, in der die Schlüssel Zeichenfolgen und die Werte Schnittstellen sind, die die nicht gemarshallten Daten darstellen.
var grades map[string]interface{} err := json.Unmarshal([]byte(jsonString), &grades)
Option 2: Verwenden einer benutzerdefinierten Struktur
If Sie haben eine bestimmte Struktur, in der Sie die Daten darstellen möchten. Sie können eine benutzerdefinierte Struktur erstellen und die unbekannten Schlüssel beim Unmarshaling ignorieren, indem Sie das Tag json:"-" verwenden. Das Feld „Grades“ in der GradeData-Struktur enthält die nicht gemarshallten Daten als „map[string]interface{}.“ Daten in Go. Es ist wichtig, die Methode zu wählen, die am besten zu den Anforderungen Ihrer Anwendung passt.
Das obige ist der detaillierte Inhalt vonWie entmarshaliere ich JSON-Daten mit unbekannten Schlüsseln und Werten in Go?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!