将Go结构转换为JSON [英] Converting Go struct to JSON
本文介绍了将Go结构转换为JSON的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我试图使用 json
包将Go结构转换为JSON,但我得到的结果是 {}
。我确信这是完全明显的,但我没有看到它。
I am trying to convert a Go struct to JSON using the json
package but all I get is {}
. I am certain it is something totally obvious but I don't see it.
package main
import (
"fmt"
"encoding/json"
)
type User struct {
name string
}
func main() {
user := &User{name:"Frank"}
b, err := json.Marshal(user)
if err != nil {
fmt.Printf("Error: %s", err)
return;
}
fmt.Println(string(b))
}
然后当我尝试运行它时,我得到了这个:
Then when I try to run it I get this:
$ 6g test.go && 6l -o test test.6 && ./test
{}
推荐答案
要导出 User.name
字段,以便 json
包可以看到它。将名称
字段重命名为名称
。
You need to export the User.name
field so that the json
package can see it. Rename the name
field to Name
.
package main
import (
"fmt"
"encoding/json"
)
type User struct {
Name string
}
func main() {
user := &User{Name: "Frank"}
b, err := json.Marshal(user)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(string(b))
}
输出:
Output:
{"Name":"Frank"}
这篇关于将Go结构转换为JSON的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文