ich ein Json wie dieses:Golang - Parsing unbekannt JSON aus der Datei und iterieren hinein
{
"store_name": "Barry's Farmer's Market",
"foods": {
"apple": "5.91",
"peach": "1.84",
"carrot": "6.44",
"beans": "3.05",
"orange": "5.75",
"cucumber": "6.42"
},
"store_location": "Corner of Elm Tree Hill and 158th Street"
}
und ich möchte es als eine unbekannte JSON parsen eine Karte mit [string] Schnittstelle {}:
Berücksichtigt man, dass "v" nicht zu string konvertiert und dass ich alle Werte in "foods" angeben möchte, können Sie mir helfen? Ich denke, dass ich etwas vermisse ...
Schön und perfekt. Denkst du, dass die Verwendung des "reflect" -Pakets, um herauszufinden, ob ich eine Zeichenfolge oder eine Map [string] -Schnittstelle habe, eine gute Idee wäre? –
Wenn Sie nicht wissen, wie die Struktur aussehen soll, würde ich mich zunächst für einen [type switch] (https://golang.org/ref/spec#Switch_statements) entscheiden, und wenn Sie mehr Flexibilität benötigen, dann greifen Sie zurück Betrachtung. Reflexion ist im Allgemeinen die schlechteste Option in den meisten Sprachen, einschließlich Go. – Adrian
Ich denke, ich werde nur _string_ und _map [string] interface_ verwenden, so dass Typ Schalter sehr hilfreich ist. Vielen Dank. –