我定义了结构,如:
type json-input []struct {
Data string `json:"data"`
}
Run Code Online (Sandbox Code Playgroud)
解组 json 字符串就像
[{“数据”:“一些数据”},{“数据”:“一些数据”}]
data := &json-input{}
_ = json.Unmarshal([]byte(resp.Data), data)
Run Code Online (Sandbox Code Playgroud)
我如何使用这个结构的对象来转换数据
您不能在类型声明中使用连字符,并且您可能希望解组为resp而不是resp.Data; 也就是说,你可能想要做类似的事情
import (
"encoding/json"
"fmt"
)
type jsoninput []struct {
Data string `json:"data"`
}
func main() {
resp := `[{"data":"some data"}, {"data":"some more data"}]`
data := &jsoninput{}
_ = json.Unmarshal([]byte(resp), data)
for _, value := range *data {
fmt.Println(value.Data) // Prints "some data" and "some more data"
}
}
Run Code Online (Sandbox Code Playgroud)
https://play.golang.org/p/giDsPzgHT_