Golang是一种开源编程语言,越来越受欢迎,在JSON数据处理中也非常有用。有时候需要在线解析JSON数据,来验证或者快速查找数据。下面介绍一下如何使用Golang进行JSON在线解析。
encoding/jsonjson.Unmarshal
// 定义数据结构
type User struct {
Name string `json:"name"`
Age int `json:"age"`
}
// JSON数据字符串
jsonStr := `{"name": "Tom", "age": 23}`
// 解析JSON数据
var user User
err := json.Unmarshal([]byte(jsonStr), &user)
if err != nil {
fmt.Println("解析JSON发生错误:", err)
return
}
// 输出解析后的数据
fmt.Println("Name:", user.Name)
fmt.Println("Age:", user.Age)
此时,如果JSON数据格式正确,就可以正确解析出来了。否则会输出解析JSON发生错误的提示,需要检查JSON数据格式是否正确。
json.Marshaljson.Unmarshal
// 定义结构体
type User struct {
Name string `json:"name"`
Age int `json:"age"`
}
// 定义对象
user := User{
Name: "Tom",
Age: 23,
}
// 转换成JSON字符串
jsonBytes, err := json.Marshal(user)
if err != nil {
fmt.Println("转换JSON发生错误:", err)
return
}
// 输出JSON字符串
jsonStr := string(jsonBytes)
fmt.Println("JSON字符串:", jsonStr)
总之,Golang的JSON包提供了很多强大的JSON数据解析和转换功能,方便快捷。