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

gosn 轉(zhuǎn)json

夏志豪1年前7瀏覽0評論

在Go語言中,將數(shù)據(jù)轉(zhuǎn)換成JSON的標(biāo)準(zhǔn)庫是內(nèi)置的,不需要額外安裝包。導(dǎo)入"encoding/json"包后,使用json.Marshal()或json.MarshalIndent()函數(shù)將Go語言的數(shù)據(jù)類型轉(zhuǎn)換為JSON格式。

例如:

package main
import (
"encoding/json"
"fmt"
)
type Person struct {
Name   string `json:"name"`
Age    int    `json:"age"`
Gender string `json:"gender,omitempty"`
}
func main() {
p1 := Person{Name: "Tom", Age: 20}
p1Json, _ := json.Marshal(p1)
fmt.Println(string(p1Json))
p2 := Person{Name: "Jane", Age: 22, Gender: "female"}
p2Json, _ := json.MarshalIndent(p2, "", "    ")
fmt.Println(string(p2Json))
}

在上述代碼中,首先定義了一個結(jié)構(gòu)體Person,并賦予其對應(yīng)的JSON標(biāo)簽。接著聲明了兩個Person類型的變量p1和p2,并將它們分別轉(zhuǎn)換為JSON格式。第一個變量p1通過json.Marshal()函數(shù)轉(zhuǎn)換,并使用string()函數(shù)將JSON格式的二進(jìn)制數(shù)據(jù)轉(zhuǎn)換成字符串;第二個變量p2通過json.MarshalIndent()函數(shù)轉(zhuǎn)換,并且將JSON格式進(jìn)行縮進(jìn)處理。

在控制臺上運行上述代碼,輸出的結(jié)果如下:

{"name":"Tom","age":20}
{
"name": "Jane",
"age": 22,
"gender": "female"
}

可以看到,結(jié)果與預(yù)期一致,并且通過JSON格式的字符串可以進(jìn)行網(wǎng)絡(luò)傳輸或?qū)懭胛募炔僮鳌?/p>