在Golang中,可以使用`encoding/json`包來實現(xiàn)JSON的編碼和解碼。以下是一個簡單的示例:
```
package main
import (
"encoding/json"
"fmt"
)
type Person struct {
Name string `json:"name"`
Age int `json:"age"`
}
func main() {
// 編碼為JSON
person := Person{
Name: "Alice",
Age: 25,
}
jsonData, err := json.Marshal(person)
if err != nil {
fmt.Println("JSON encoding error:", err)
return
}
fmt.Println(string(jsonData))
// 解碼JSON
var decodedPerson Person
err = json.Unmarshal(jsonData, &decodedPerson)
if err != nil {
fmt.Println("JSON decoding error:", err)
return
}
fmt.Println(decodedPerson)
}
```
在上面的示例中,我們定義了一個`Person`結(jié)構(gòu)體,并使用`json`標簽指定了在JSON中對應(yīng)的字段名。然后,我們使用`json.Marshal`函數(shù)將`Person`結(jié)構(gòu)體編碼為JSON字符串,并使用`json.Unmarshal`函數(shù)將JSON字符串解碼為`Person`結(jié)構(gòu)體。
上述示例的輸出結(jié)果為:
```
{"name":"Alice","age":25}
{Name:Alice Age:25}
```
這樣,我們就成功地完成了JSON的編碼和解碼。