Go語言中的struct是一種非常常用的數據結構,可以保存一組相關變量。而在處理Web請求時,我們通常需要將struct轉換成JSON字符。這里我們來介紹一下如何實現Go struct轉json字符。
首先,我們需要使用encoding/json包中的Marshal函數將struct轉換成JSON格式的字符串。
import ( "encoding/json" "fmt" ) type Person struct { Name string Age int } func main() { p := Person{"張三", 18} jsonString, err := json.Marshal(p) if err != nil { fmt.Println("轉換出錯:", err) } fmt.Printf("%s\n", jsonString) }
上面的代碼中,我們定義了一個名為Person的struct,其中包括了名稱和年齡字段。在main函數中,我們創建了一個Person實例并將其轉換成JSON格式的字符串。最后,我們使用Printf函數將該字符串打印到控制臺上。
我們也可以通過定義tag的方式來在json中設置字段名稱。下面這個例子中,我們在struct中使用了`json:"name"`這個tag,表示在輸出的JSON字符中,該字段會被命名為"name"。
import ( "encoding/json" "fmt" ) type Person struct { Name string `json:"name"` Age int `json:"age"` } func main() { p := Person{"張三", 18} jsonString, err := json.Marshal(p) if err != nil { fmt.Println("轉換出錯:", err) } fmt.Printf("%s\n", jsonString) }
最后,我們需要注意的是,在轉換成JSON格式之前,我們需要保證所有字段的類型都是可導出的(即首字母大寫)。否則,編譯器會拋出錯誤。
上一篇MySQL創建三張表案例
下一篇vue cell 獲取