欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

go語言自動生成json

洪振霞2年前10瀏覽0評論

隨著web開發的迅速發展,web應用程序對于數據的處理和交互越來越重要。json數據成為了web應用程序中最常用的數據格式之一。在go語言中,可以很方便地自動生成json數據。

type Person struct {
Name    string   `json:"name"`
Age     int      `json:"age"`
Address string   `json:"address,omitempty"`
}
person1 := Person{"張三", 18, ""}
person2 := Person{Name: "李四", Age: 20, Address: "杭州市"}
b1, err := json.Marshal(person1)
if err != nil {
fmt.Println("json encode error: ", err)
}
fmt.Println(string(b1))    // {"name":"張三","age":18}
b2, err := json.Marshal(person2)
if err != nil {
fmt.Println("json encode error: ", err)
}
fmt.Println(string(b2))    // {"name":"李四","age":20,"address":"杭州市"}

可以看到,我們定義了一個結構體Person,并給結構體的字段添加了json標簽,這樣調用json.Marshal()時就會自動將結構體轉換為符合json規范的字符串。

另外,還可以在json.Marshal()的時候加上縮進的參數,以便更好地展示json數據:

b, err := json.MarshalIndent(person2, "", "	")
if err != nil {
fmt.Println("json encode error: ", err)
}
fmt.Println(string(b))    // {
//	"name": "李四",
//	"age": 20,
//	"address": "杭州市"
// }

生成的json數據已經格式化好,可以方便地和其他語言交互,也方便了前端調試json數據接口。