我想解析这个 JSON(在 config/synch.conf 中):{ "period" :"yy", "exec_period" : { "start" : { "month" : 1, "week" : 2, "day" : 3, "hour" : 4, "minute" : 5 }, "end" : { "month" : 6, "week" : 7, "day" : 8, "hour" : 9, "minute" : 10 } }, "backup" : [ { "local_dir" : "directoryLo1", "server_dir" : "directoryLo2", "server_host" : "domaineName" }, { "local_dir" : "directoryLo1", "server_dir" : "directorySe2", "server_host" : "domaineName" } ], "incremental_save" : "1Y2M"}有了这个程序:package mainimport ( "encoding/json" "fmt" "io/ioutil")func main() { content, err := ioutil.ReadFile("config/synch.conf") if err == nil { type date struct{ month float64 week float64 day float64 hour float64 minute float64 } type period struct{ start date end date } type backupType []struct{ local_dir string server_dir string server_host string } type jason struct{ period string exec_period period backup backupType incremental_save string } var parsedMap jason err := json.Unmarshal(content, &parsedMap) if err!= nil { fmt.Println(err) } fmt.Println(parsedMap) } else { panic(err) }}哪个不能按预期工作,因为输出是:{ {{0 0 0 0 0} {0 0 0 0 0}} [] }这是 play.golang.org http://play.golang.org/p/XoMJIDIV59 上的相同示例我不知道这是否可以使用 go,但我想获取json.Unmarshal存储在 map[string]interface{}(或允许这样做的另一个对象)中的函数的值,例如,该值一分钟结束(10)是这样的:parsedMap["exec_period"]["end"]["minute"],但我不uderstand“通用JSON withinterface {}”的一部分,JSON和围棋在golang.org
1 回答
- 1 回答
- 0 关注
- 194 浏览
添加回答
举报
0/150
提交
取消