JSON是一種輕量級的數(shù)據(jù)交換格式,可用于表示結(jié)構(gòu)化數(shù)據(jù)。Go語言的JSON包提供了很多方法,可以方便地對JSON數(shù)據(jù)進行編碼和解碼。下面我們來詳細介紹一下Go語言JSON包的使用方法。
首先,我們需要導入JSON包:
import "encoding/json"
編碼JSON數(shù)據(jù):
//定義一個結(jié)構(gòu)體
type Employee struct {
Name string
Age int
Address string
}
//初始化對象
emp := Employee{
Name: "Lily",
Age: 25,
Address: "Shanghai",
}
//將對象編碼為JSON格式的數(shù)據(jù),注意返回值為byte類型
jsonStr, err := json.Marshal(emp)
if err != nil {
//處理錯誤
}
//輸出JSON數(shù)據(jù)
fmt.Printf("%s\n", jsonStr)
解碼JSON數(shù)據(jù):
//定義一個結(jié)構(gòu)體
type Employee struct {
Name string
Age int
Address string
}
//假設以下JSON數(shù)據(jù)保存在jsonStr變量中
jsonStr := `{
"Name": "Lily",
"Age": 25,
"Address": "Shanghai"
}`
//聲明一個Employee變量
var emp Employee
//將JSON數(shù)據(jù)解碼到emp變量中
err := json.Unmarshal([]byte(jsonStr), &emp)
if err != nil {
//處理錯誤
}
//輸出解碼后的數(shù)據(jù)
fmt.Printf("%s %d %s\n", emp.Name, emp.Age, emp.Address)
總之,Go語言的JSON包是一個非常強大且易于使用的工具,能夠讓我們輕松地在Go語言中編碼和解碼JSON數(shù)據(jù)。