温馨提示×

Golang中怎么实现JSON编码解码

小亿
82
2024-03-13 19:06:22
栏目: 编程语言

在Golang中,可以使用标准库中的encoding/json包来实现JSON编码和解码。下面是一个简单的示例:

package main

import (
	"encoding/json"
	"fmt"
)

type Person struct {
	Name  string `json:"name"`
	Age   int    `json:"age"`
	Email string `json:"email"`
}

func main() {
	// 编码为JSON
	p := Person{Name: "Alice", Age: 30, Email: "alice@example.com"}
	jsonData, err := json.Marshal(p)
	if err != nil {
		fmt.Println("JSON编码失败:", err)
		return
	}
	fmt.Println(string(jsonData))

	// 解码JSON
	var p2 Person
	err = json.Unmarshal(jsonData, &p2)
	if err != nil {
		fmt.Println("JSON解码失败:", err)
		return
	}
	fmt.Println(p2)
}

以上代码中,首先定义了一个Person结构体来表示一个人的信息,然后通过json.Marshal函数将一个Person实例编码为JSON字符串,再通过json.Unmarshal函数将JSON字符串解码为一个Person实例。最后输出了编码前后的Person实例。

0