Go語言是一門強類型語言,在處理不同類型的數據時需要進行類型轉換。其中就包括字符串轉換為JSON格式,這在我們進行Web開發中常常會用到。
import ( "encoding/json" "fmt" ) type Person struct { Name string `json:"name"` Age int `json:"age"` } func main() { p := Person{ Name: "John", Age: 30, } // 將struct轉換成json格式的字符串 str, err := json.Marshal(p) if err != nil { fmt.Println(err) return } fmt.Println(string(str)) }
上面的代碼演示了如何將一個Person類型的結構體轉換成JSON格式的字符串,并輸出到控制臺。
與此相反,我們也可以將一個JSON格式的字符串轉換成一個結構體。如下所示:
func main() { jsonStr := `{"name":"John","age":30}` var p Person // 將json格式的字符串轉換成struct err := json.Unmarshal([]byte(jsonStr), &p) if err != nil { fmt.Println(err) return } fmt.Println(p.Name, p.Age) }
以上代碼將一個JSON格式的字符串"{"name":"John","age":30}" 轉換成了一個Person類型的結構體,然后輸出了結構體的字段Name和Age。
在實際開發中,我們經常會遇到需要將JSON格式的數據轉換為其他類型的數據。因此,在學習Go語言時,掌握如何進行字符轉JSON的技能非常重要。