【发布时间】:2014-02-23 17:38:01
【问题描述】:
我一直在尝试将地图编码为 JSON,但到目前为止我没有成功。 Json.Marshal 不是编码值,它只是编码键。
https://gist.github.com/rahulpache/9174490
package main
import (
"encoding/json"
"fmt"
)
type node struct {
value string
expiry float64
settime float64
}
func main() {
var x = make(map[string]node)
x["hello"] = node{value: "world", expiry: 1, settime: 2}
x["foo"] = node{value: "bar", expiry: 1, settime: 2}
a, err := json.Marshal(x)
fmt.Println(string(a))
}
输出:
{"foo":{},"hello":{}}
【问题讨论】:
-
结构字段必须导出(以大写字母开头)
标签: json go marshalling