Ich versuche, einen JSON-Stream in Go zu parsen. Ich habe ein vereinfachtes Beispiel erstellt:Json Parsing von int64 in gehen; Nullwerte
package main
import (
"encoding/json"
"fmt"
)
var d = []byte(`{ "world":[{"data": 2251799813685312}, {"data": null}]}`)
type jsonobj struct{ World []World }
type World struct{ Data int64 }
func main() {
var data jsonobj
jerr := json.Unmarshal(d, &data)
fmt.Println(jerr)
}
diese geben mir
go run testmin.go
json: cannot unmarshal null into Go value of type int64
ich ein Nullable-int64 in der sql package gefunden haben, aber json scheint es nicht zu handhaben zu können.
Gibt es einen nullbaren Int64-Typ, den Json verarbeiten kann? Wenn möglich, würde ich mit dem JSON Null in übersetzt werden, -1 oder MinValue.
Vielen Dank für Ihre Eingabe, Fabian
Das nächste Mal kann das Beispiel auf 'var n int64' und' json.Unmarshal verkürzt werden ("2251799813685312", & n) ' –
wollen nur, dass Sie wissen, getestet mit Go 1.1.2," null "sein kann Verwenden Sie mit Int-Typ – nvcnvn