登录
首页 >  Golang >  Go问答

从结构创建 JSON,而不是结构值

来源:stackoverflow

时间:2024-03-17 16:51:19 408浏览 收藏

为了生成 JSON 表示形式,需要反射包。尽管如此,即使使用反射,也需要一个实际值来获取类型。因此,建议使用结构的零值来创建 JSON 表示形式。例如,如果结构为 ResolutionValue,则可以使用 `json.Marshal(ResolutionValue{})` 来生成 JSON 表示形式。

问题内容

我想我需要反射包才能做到这一点。假设我有一个像这样的结构:

type Inner struct {
   Whatever int
}

type ResolutionValue struct {
    Val string
    Inner
}

假设我想生成 resolutionvalue 结构的 json 表示形式...是否有某种方法可以在不实例化的情况下创建 json 表示形式?


解决方案


即使使用反射,您也需要一个实际值才能使用 reflect.typeof 获取类型。所以我建议只使用您类型的零值。

json.Marshal(ResolutionValue{})

以上就是《从结构创建 JSON,而不是结构值》的详细内容,更多关于的资料请关注golang学习网公众号!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>