Ich habe den folgenden Code zu versuchen, diese json-Datei zu Unmarshal, jedoch die Zeile json.Unmarshal ([] Byte (msg ["Restaurant"]), & Restaurant) gibt immer einen Fehler. Wie kann ich Unmarshal dazu bringen, das "Restaurant" zu ignorieren oder nur die "Restaurant" -Daten an die Unmarshal-Funktion zu übergeben?golang json unmarshal Teil der Karte [string] Schnittstelle {}
Danke!
{
"restaurant": {
"name": "Tickets",
"owner": {
"name": "Ferran"
}
}
}
file, e := ioutil.ReadFile("./rest_read.json")
if e != nil {
fmt.Println("file error")
os.Exit(1)
}
var data interface{}
json.Unmarshal(file, &data)
msg := data.(map[string]interface{})
log.Println(msg)
log.Println(msg["restaurant"])
log.Println(reflect.TypeOf(msg["restaurant"]))
var restaurant Restaurant
json.Unmarshal([]byte(msg["restaurant"]), &restaurant)
log.Println("RName: ", restaurant.Name)
log.Println("Name: ", restaurant.Owner.Name)
Gute Antwort! Manchmal ist es ein Schmerz, ein Modell zu machen, um strenges Unmarshalling zu machen. – Civilian