如何将 Encoding
的默认值设置为“base64”?
type FileData struct {
UID string `json:"uid"`
Size int `json:"size"`
Content string `json:content`
Encoding string `json:encoding`
User string `json:"user"`
}
我试过了
Encoding string `json:encoding`= "base64" // Not working
原文由 Jagdish Idhate 发布,翻译遵循 CC BY-SA 4.0 许可协议
你不能,因为在 Go 中类型没有构造函数。
相反,有一个显式初始化函数(或指针接收器上的方法)或构造函数/工厂函数(这些通常称为
New<TypeName>
所以你的将是NewFileData
)这将返回一个你的类型的初始化值。总而言之,我觉得这看起来像是一个 XY 问题。从你的问题来看,如果没有解组,你似乎想在你的一个字段上有一个默认值。如果是这样,只需对从 JSON 解组的这种类型的值进行后处理,如果没有任何内容被解组为
Encodning
将其设置为您想要的任何默认值。或者你可以考虑这种方法:
像
type EncodingMethod string
这样的东西应该可以。