您的位置:宽带测速网 > 编程知识 > Go语言的JSON编解码怎么实现

Go语言的JSON编解码怎么实现

2025-06-25 15:44来源:互联网 [ ]

在 Go 语言中,可以使用 encoding/json 包来进行 JSON 的编解码操作。下面是一个简单的示例:

package mainimport ("encoding/json""fmt")type Person struct {Name string `json:"name"`Ageint`json:"age"`}func main() {// 编码person := Person{"Alice", 30}data, err := json.Marshal(person)if err != nil {fmt.Println("JSON encoding error:", err)return}fmt.Println(string(data))// 解码jsonStr := `{"name":"Bob","age":25}`var newPerson Personerr = json.Unmarshal([]byte(jsonStr), &newPerson)if err != nil {fmt.Println("JSON decoding error:", err)return}fmt.Printf("%+v\n", newPerson)}

运行以上代码,可以看到输出结果:

{"name":"Alice","age":30}{Name:Alice Age:30}

这样就实现了 JSON 的编解码操作。在上面的示例中,json.Marshal 函数用于将结构体编码为 JSON 字符串,json.Unmarshal 函数用于将 JSON 字符串解码为结构体。需要注意的是,结构体中的字段必须是导出的(即首字母大写),否则在编解码时可能会出现问题。