Go語言中快速轉換JSON格式數據非常簡單。在進行JSON格式數據轉換之前,你需要先將要操作的JSON格式數據讀入到一個Byte數組中。Go語言中的Json包中有兩個主要的結構體: Encoder與Decoder。Encoder可以將Json字符串輸出到一些寫Destination中;而Decoder可以將輸入源中的Json數據解析到到Go語言的結構體中。
package main
import (
"encoding/json"
"fmt"
)
type Actor struct {
Name string `json:"name"`
Birth string `json:"date_of_birth"`
Movies []string `json:"movies"`
}
func main() {
json_str := []byte(`{"name":"Tom Hanks","date_of_birth":"July 9, 1956","movies":["Forrest Gump","Cast Away","Toy Story"]}`)
var actor Actor
err := json.Unmarshal(json_str, &actor)
if err != nil {
fmt.Println(err)
return
}
fmt.Printf("Actor's Name:%s\n", actor.Name)
fmt.Printf("Date of Birth:%s\n", actor.Birth)
fmt.Printf("Movies:%s\n", actor.Movies)
}
在上面的代碼中,我們首先定義了一個Actor的結構體。該結構體中的每一個field都帶有一個json tag。這個tag用于將json中的屬性與Go的結構體中的property進行關聯。
接著,我們定義了一個json_str變量來存儲json數據。在main函數中,我們首先創建了一個Actor的對象。然后,我們調用了json.Unmarshal函數,從而將json字符串轉換為Go中的結構體。最后,我們通過fmt打印出了Actor的姓名、出生日期和電影列表。
總的來說,使用Go語言編寫JSON轉換代碼很簡單。通過使用Encoder和Decoder來實現JSON數據的讀寫和轉換,開發者可以輕松地將JSON數據與Go語言中的結構體進行匹配。
上一篇go otto json
下一篇python 搖號程序