我正在尝试在 Go 中解析一个 json 流。我创建了一个简化的示例:
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)
}
这会给我
go run testmin.go
json: cannot unmarshal null into Go value of type int64
我在sql 包中找到了一个可为空的 int64 ,但 json 似乎无法处理它。
是否有 json 可以处理的可为空的 int64 类型?如果可能的话,我会对将 json null转换为 -1 或 MinValue感到满意。
谢谢你的意见,法比安