在golang中,我們可以使用內置包中的"encoding/json"來方便地將字符串轉換成json格式。
import ( "encoding/json" "fmt" ) type Person struct { Name string `json:"name"` Age int `json:"age"` } func main() { p := Person{Name: "Peter", Age: 20} b, err := json.Marshal(p) if err != nil { fmt.Println(err) } fmt.Println(string(b)) }
以上代碼將創建一個名為Person的struct,然后使用json.Marshal函數將其轉換為json格式的byte數組,最后使用string函數將其轉換為字符串并打印出來。
而如果我們需要將json字符串轉換成結構體或者map對象,則可以使用json.Unmarshal函數。
import ( "encoding/json" "fmt" ) type Person struct { Name string `json:"name"` Age int `json:"age"` } func main() { jsonString := `{ "name": "Peter", "age": 20 }` p := Person{} err := json.Unmarshal([]byte(jsonString), &p) if err != nil { fmt.Println(err) } fmt.Println(p.Name, p.Age) }
以上代碼將創建一個json格式的字符串,然后使用json.Unmarshal函數將其轉換為結構體對象并打印出來。
下一篇vue flag