我有以下 JSON blob,我正在尝试将其解码为 Go。
["contig", "32", {"a":[33,41,35], "b":[44,34,42]}]
我相信我必须对 JSON 的数据结构进行建模。我尝试使用一个名为的结构Line:
package main
import (
"encoding/json"
"fmt"
)
type Line struct {
Contig string
Base string
PopMap map[string][]int
}
func main() {
j := []byte(`["contig", "32", {"a":[33,41,35], "b":[44,34,42]}]`)
var dat Line
err := json.Unmarshal(j, &dat)
fmt.Println(dat)
fmt.Println(err)
}
我收到以下错误:
{ map[]}
json: cannot unmarshal array into Go value of type main.Line
我究竟做错了什么?