Go 是一门简洁高效的编程语言,它提供了一系列标准库,其中就包括了读写 json 文件的库。接下来,我们将结合实例来介绍如何使用 Go 读写 json 文件。

首先我们需要导入 "encoding/json" 包,在程序中使用 json 包需要先将数据转化为 []byte 格式。

import (
"encoding/json"
"fmt"
"io/ioutil"
)

程序中的 json.Unmarshal() 方法可以将 json 数据转换为 Go 的结构体(struct)类型。结构体类型定义后,可以使用 json.Marshal() 方法将 Go 数据类型转换为 json 字符串形式。

type PersonInfo struct {
Name string `json:"name"`
Age int `json:"age"`
}
func main() {
// 读取 json 文件
jsonStr, err := ioutil.ReadFile("./person.json")
if err != nil {
panic(err)
}
// json 数据解析
person := PersonInfo{}
err = json.Unmarshal(jsonStr, &person)
if err != nil {
panic(err)
}
// 输出解析后的数据
fmt.Printf("%+v", person)
// 将 Go 结构体转换为 json 字符串
newJson, err := json.Marshal(person)
if err != nil {
panic(err)
}
// 输出转换后的 json 字符串
fmt.Println(string(newJson))
}

代码中的 ioutil.ReadFile() 方法用于读取 json 文件,将返回的数据以 []byte 形式存储。接着,我们使用 json.Unmarshal() 方法将 json 数据解析为定义好的 PersonInfo 结构体变量,并输出解析后的数据。

最后,我们使用 json.Marshal() 方法将 Go 结构体转换为 json 字符串,并输出结果。

至此,我们已经介绍了如何使用 Go 读写 json 文件的方法,期望本文能对大家有所帮助。