Pau*_*son 8 struct interface go
我对 Go 很陌生,我正在努力了解所有不同的类型以及如何使用它们。我有一个包含以下内容的界面(最初在一个 json 文件中):
[map[item:electricity transform:{fuelType}] map[transform:{fuelType} item:gas]]
Run Code Online (Sandbox Code Playgroud)
我有以下结构
type urlTransform struct {
item string
transform string
}
Run Code Online (Sandbox Code Playgroud)
我不知道如何将接口数据放入结构中;我敢肯定这真的很愚蠢,但我一整天都在尝试。任何帮助将不胜感激。
将 JSON 直接解码为您想要的类型,而不是解码为interface{}.
声明与 JSON 数据结构匹配的类型。对 JSON 对象使用结构体,对 JSON 数组使用切片:
type transform struct {
// not enough information in question to fill this in.
}
type urlTransform struct {
Item string
Transform transform
}
var transforms []urlTransform
Run Code Online (Sandbox Code Playgroud)
必须导出字段名称(以大写字母开头)。
将 JSON 解组为声明的值:
err := json.Unmarshal(data, &transforms)
Run Code Online (Sandbox Code Playgroud)
或者
err := json.NewDecoder(reader).Decode(&transforms)
Run Code Online (Sandbox Code Playgroud)