1.json是跨平台.跨语言的数据交换语言
JSON (JavaScript Object Notation)是一种比XML更轻量级的数据交换格式,在易于人们阅读和编写的同时,也易于程序解析和生成。尽管JSON是JavaScript的一个子集,但JSON采用完全独立于编程语言的文本格式,且表现为键/值对集合的文本描述形式(类似一些编程语言中的字典结构),这使它成为较为理想的、跨平台、跨语言的数据交换语言。
package main import ( "encoding/json" "fmt") //通过结构体生成json 文本,其成员变量名必须大写type People struct { //由于结构体生成json文本成员变量必须大写,可以使用struct_tag来二次编码,此时可以使用小写 Name string `json:"name"` Subject []string Isok bool `json:", string"` //转换成字符串类型输出 Price float64 `json:"-"` //不打印} //这时输出的成员变量就是小写 func main() { p1 := People{"steven", []string{"C++", "Go", "Python"}, true, 66.66} //编码 res, err := json.Marshal(p1) if err != nil { fmt.Println("err=", err) return } //fmt.Println(res)//打印的是[]byte格式 fmt.Println(string(res)) //转换成string类型 //格式化编码,使结构更加清晰 res1, err1 := json.MarshalIndent(p1, "", " ") //第二个参数是空,第三个是缩进 if err != nil { fmt.Println("err1=", err1) return } fmt.Println(string(res1))}
原文地址:https://www.cnblogs.com/zhaopp/p/11625966.html
时间: 2024-11-05 22:52:09