溫馨提示×

Golang中怎么實現(xiàn)JSON編碼解碼

小億
86
2024-03-13 19:06:22
欄目: 編程語言

在Golang中,可以使用標準庫中的encoding/json包來實現(xiàn)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編碼失?。?quot;, err)
		return
	}
	fmt.Println(string(jsonData))

	// 解碼JSON
	var p2 Person
	err = json.Unmarshal(jsonData, &p2)
	if err != nil {
		fmt.Println("JSON解碼失?。?quot;, err)
		return
	}
	fmt.Println(p2)
}

以上代碼中,首先定義了一個Person結(jié)構(gòu)體來表示一個人的信息,然后通過json.Marshal函數(shù)將一個Person實例編碼為JSON字符串,再通過json.Unmarshal函數(shù)將JSON字符串解碼為一個Person實例。最后輸出了編碼前后的Person實例。

0