色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

go語言字符串轉(zhuǎn)json

在go語言中,我們可以使用內(nèi)置的encoding/json包,將字符串轉(zhuǎn)換成JSON格式的數(shù)據(jù)。

首先,我們需要定義一個(gè)結(jié)構(gòu)體,用于存放JSON數(shù)據(jù)的字段。例如:

type Person struct{
Name string `json:"name"`
Age  int    `json:"age"`
}

在上面的代碼中,我們定義了一個(gè)名為Person的結(jié)構(gòu)體,它包含了兩個(gè)字段,Name和Age。我們?cè)谧侄魏竺媸褂梅匆?hào)來定義他們的JSON鍵值對(duì)。這里的“name”和“age”就是JSON中的鍵。

接著,我們可以使用json.Marshal()函數(shù)將結(jié)構(gòu)體轉(zhuǎn)換成JSON格式的字符串。如下:

p := Person{Name: "Tom", Age: 30}
jsonStr, err := json.Marshal(p)
if err != nil {
fmt.Println("Error:", err)
}
fmt.Println(string(jsonStr))

上面的代碼中,我們首先定義了一個(gè)Person結(jié)構(gòu)體,并將其賦值給了變量p。接著調(diào)用json.Marshal()函數(shù),將p轉(zhuǎn)換成JSON格式的字符串,存儲(chǔ)在jsonStr變量中。最后打印出來這個(gè)字符串。

如果我們要將JSON格式的字符串轉(zhuǎn)換成對(duì)應(yīng)的結(jié)構(gòu)體,可以使用json.Unmarshal()函數(shù)。如下:

jsonStr := `{"name":"Tom","age":30}`
p := &Person{}
err := json.Unmarshal([]byte(jsonStr), p)
if err != nil {
fmt.Println("Error:", err)
}
fmt.Println(p)

在上面的代碼中,我們將JSON格式的字符串存儲(chǔ)在jsonStr變量中。接著定義了一個(gè)指向Person結(jié)構(gòu)體的指針p。然后調(diào)用json.Unmarshal()函數(shù),將jsonStr轉(zhuǎn)換成對(duì)應(yīng)的結(jié)構(gòu)體,并將結(jié)果存儲(chǔ)在p中。最后打印出來p。

通過上面的例子,我們可以看到go語言中,將字符串轉(zhuǎn)換成JSON格式和將JSON格式轉(zhuǎn)換成對(duì)應(yīng)的結(jié)構(gòu)體是非常簡(jiǎn)單的。