我正在研究JSON编码和解码,但是我陷入了嵌套结构分解的问题。
我试图将子结构声明为外部类型,并在父结构中声明显式结构,如下所示:
type WorkingSession struct {
Project Project `json:"project"`
Hours int `json:"hours"`
Date string `json:"date"`
Nested struct{
NestedField string `json:"nested_field"`
} `json:"nested"`
}
type Project struct {
Name string `json:"name"`
}
但是当我执行main时:
func main() {
document:= []byte(`
{
"project " : {"name" : "Project 1"},
"hours" : 4,
"date" : "2019-11-03",
"nested" : {"nested_field" : "test"}
}
`)
var ws WorkingSession
err := json.Unmarshal(document, &ws)
log.Println(ws)
if err != nil {
log.Fatal(err.Error())
}
}
它不显示project
嵌套字段:
2019/11/03 11:24:04 {{} 4 2019-11-03 {test}}
怎么了?
答案 0 :(得分:1)
您的From setter BeanOne@7f1302d6
From testMethod BeanOne@7f1302d6
键中还有另一个错字。
您在project
中有一个空格。删除空间,它将正常工作。
"project "