GO 解析json数据的方法
go解析json数据通常使用"encoding/json"
包,导入后使用(data []byte, v interface{}) error
来解析数据,讨论的就是怎么给定v
,使得数据能够正常接收
方式一 给定结构体struct
示例:
type example struct {
ID int `json:"id"`
Name string `json:"name"`
Class int `json:"class"`
}
数据解析:
var s = `[{"id":14125,"name":"adad",class":4},{"id":14126,"name":"asas",class":4}]`
var x []example
err := ([]byte(s), &x)
if err != nil {
return
}
这种方式适用于知道结构体构造的情况,通用做法
方式二 创建map
示例:
var x = make([]map[string]interface{}, 0)
var s = `[{"id":14125,"name":"adad",class":4},{"id":14126,"name":"asas",class":4}]`
err := ([]byte(s), &x)
if err != nil {
return
}
此方法通用,但使用interface{}效率不高