Go语言是一种功能强大的编程语言,它提供了丰富的标准库,包括用于读写JSON文件的功能。

在Go语言中,我们可以使用encoding/json包来读写JSON文件。该包提供了Marshal和Unmarshal函数,分别用于将Go语言结构转换为JSON格式,以及将JSON格式转换为Go语言结构。

type Person struct {
Name     string `json:"name"`
Age      int    `json:"age"`
Address  string `json:"address"`
Phone    string `json:"phone"`
}
func main() {
p1 := Person{
Name:    "Tom",
Age:     20,
Address: "Beijing",
Phone:   "18888888888",
}
// 将Go结构体转换成JSON字符串
bytes, err := json.Marshal(p1)
if err != nil {
log.Fatal(err)
}
// 将JSON字符串写入文件
err = ioutil.WriteFile("person.json", bytes, 0644)
if err != nil {
log.Fatal(err)
}
// 从文件中读取JSON字符串
bytes, err = ioutil.ReadFile("person.json")
if err != nil {
log.Fatal(err)
}
// 将JSON字符串转换成Go结构体
var p2 Person
err = json.Unmarshal(bytes, &p2)
if err != nil {
log.Fatal(err)
}
fmt.Println(p2.Name)
fmt.Println(p2.Age)
fmt.Println(p2.Address)
fmt.Println(p2.Phone)
}

在这个示例中,我们定义了一个Person结构体,并将其转换为JSON格式来写入文件。接着我们从文件中读取JSON字符串,并将其转换为Go结构体。最后,我们打印了从JSON字符串中解析出来的Person结构体的字段。