我正在尝试使用 json
包将 Go 结构转换为 JSON,但我得到的只是 {}
。我确信这是完全显而易见的事情,但我没有看到。
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))
}
然后当我尝试运行它时,我得到了这个:
$ 6g test.go && 6l -o test test.6 && ./test
{}
原文由 magiconair 发布,翻译遵循 CC BY-SA 4.0 许可协议
您需要 导出
User.name
字段,以便json
包可以看到它。将name
字段重命名为Name
。输出: