要使用easyjson将JSON数组解组为Go结构体,请按照以下步骤操作:
go get -u github.com/mailru/easyjson/...
[
{
"id": 1,
"name": "Alice",
"age": 30
},
{
"id": 2,
"name": "Bob",
"age": 25
}
]
为了解组这个JSON数组,我们需要创建一个对应的Go结构体:
package main
type Person struct {
ID int `json:"id"`
Name string `json:"name"`
Age int `json:"age"`
}
注意:结构体字段名的首字母必须大写,以便在其他包中访问。同时,使用反引号中的json
标签来指定JSON属性名。
Person
结构体的文件所在的目录,然后运行以下命令:easyjson -all person.go
这将为Person
结构体生成一个名为person_easyjson.go
的文件,其中包含序列化和反序列化的代码。
package main
import (
"fmt"
"log"
)
func main() {
jsonData := `[{"id": 1, "name": "Alice", "age": 30}, {"id": 2, "name": "Bob", "age": 25}]`
var persons []Person
err := easyjson.Unmarshal([]byte(jsonData), &persons)
if err != nil {
log.Fatalf("Error unmarshaling JSON: %v", err)
}
fmt.Println(persons)
}
运行此程序,将输出以下结果:
[{1 Alice 30} {2 Bob 25}]
这表明JSON数组已成功解组为[]Person
类型的Go结构体。
领取专属 10元无门槛券
手把手带您无忧上云