Heim >Backend-Entwicklung >Golang >Wie kann man mehrere JSON-Objekte in Go effizient analysieren?
Parsen mehrerer JSON-Objekte in Go
Das JSON-Parsen in Go wird mithilfe des Pakets „encoding/json“ vereinfacht. Während es mühelos Arrays von JSON-Objekten verarbeitet, entsteht die Herausforderung beim Parsen von JSON-Antworten mit mehreren Objekten, wie zum Beispiel:
{"something":"foo"} {"something-else":"bar"}
Der bereitgestellte Code versucht, die Eingabe manuell umzuwandeln, indem er die }{-Vorkommen durch } ersetzt. {, aber dieser Ansatz ist unwirksam.
Um dieses Problem zu beheben, ist eine robustere Lösung mit einem json.Decoder erforderlich. Der Ansatz umfasst:
Hier ist ein Beispielimplementierung:
package main import ( "encoding/json" "fmt" "io" "log" "strings" ) var input = ` {"foo": "bar"} {"foo": "baz"} ` type Doc struct { Foo string } func main() { dec := json.NewDecoder(strings.NewReader(input)) for { var doc Doc err := dec.Decode(&doc) if err == io.EOF { // all done break } if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", doc) } }
Diese Lösung verarbeitet mehrere JSON-Objekte in der Eingabe ordnungsgemäß und stellt deren genaue Analyse und Deserialisierung sicher.
Das obige ist der detaillierte Inhalt vonWie kann man mehrere JSON-Objekte in Go effizient analysieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!