Go 语言中使用 JSON 是一种常见的应用,它可以让我们在不同语言之间传输数据。JSON 是一种文本格式,它可以表示层次结构的数据,比如列表、字典、数组等等。Go 语言内置了一个 encoding/json 包,可以帮助我们完成 JSON 的编码和解码操作。
Go 语言中 JSON 的编码
Go 语言中的 JSON 编码是通过 encoding/json 包实现的,它提供了 Marshal 和 MarshalIndent 两个函数,分别用于将 Go 语言的值类型转换为 JSON 格式的字节数组和字符串。
Go 语言中 JSON 的解码
Go 语言中的 JSON 解码是通过 encoding/json 包实现的,它提供了 Unmarshal 和 Decode 两个函数,分别用于将 JSON 格式的字节数组和字符串转换为 Go 语言的值类型。
Go 语言中使用 JSON 的示例代码
package main import ( "encoding/json" "fmt" ) type Person struct { Name string Age int } func main() { // 将 Go 语言的值类型转换为 JSON 格式 p := Person{"Bob", 20} b, _ := json.Marshal(p) fmt.Println(string(b)) // 将 JSON 格式的字符串转换为 Go 语言的值类型 var p2 Person json.Unmarshal([]byte(`{"Name":"Alice","Age":30}`), &p2) fmt.Println(p2) }
上面的代码中,我们定义了一个 Person 结构体,使用 json.Marshal 将它转换为 JSON 格式的字符串,再使用 json.Unmarshal 将 JSON 格式的字符串转换为 Go 语言的值类型。
Go 语言中使用 JSON 是一种常见的应用,它可以让我们在不同语言之间传输数据。Go 语言内置了一个 encoding/json 包,可以帮助我们完成 JSON 的编码和解码操作,它提供了 Marshal 和 Unmarshal 两个函数,可以帮助我们实现 Go 语言和 JSON 格式之间的转换。