go语音之进阶篇通过结构体生成json
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了go语音之进阶篇通过结构体生成json,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1833字,纯文字阅读大概需要3分钟。
内容图文
1、通过结构体生成json
示例:
package main import ( "encoding/json" "fmt" ) //成员变量名首字母必须大写 type IT struct { Company string Subjects []string IsOk bool Price float64 } func main() { //定义一个结构体变量,同时初始化 s := IT{"itcast", []string{"Go", "C++", "Python", "Test"}, true, 666.666} //编码,根据内容生成json文本 buf, err := json.Marshal(s) if err != nil { fmt.Println("err = ", err) return } fmt.Println("buf = ", string(buf)) }
执行结果:
buf = {"Company":"itcast","Subjects":["Go","C++","Python","Test"],"IsOk":true,"Price":666.666}
2、根据结构体生成json
package main import ( "encoding/json" "fmt" ) //成员变量名首字母必须大写 type IT struct { Company string Subjects []string IsOk bool Price float64 } func main() { //定义一个结构体变量,同时初始化 s := IT{"itcast", []string{"Go", "C++", "Python", "Test"}, true, 666.666} //编码,根据内容生成json文本 buf, err := json.MarshalIndent(s, "", " ") //格式化编码 if err != nil { fmt.Println("err = ", err) return } fmt.Println("buf = ", string(buf)) }
执行结果:
buf = { "Company": "itcast", "Subjects": [ "Go", "C++", "Python", "Test" ], "IsOk": true, "Price": 666.666 }
3、struct_tag的使用 (通过二次编码,可以把大写变成小写,还可以以字符串方式输出)
示例:
package main import ( "encoding/json" "fmt" ) //成员变量名首字母必须大写 type IT struct { //Company string `json:"-"` //此字段不会输出到屏幕 //下面的写法都是二次编码,可以把大写变成小写 Company string `json:"company"` Subjects []string `json:"subjects"` IsOk bool `json:"isok"` //转成字符串再输出编码 //IsOk bool `json:"string"` Price float64 `json:"price"` } func main() { //定义一个结构体变量,同时初始化 s := IT{"itcast", []string{"Go", "C++", "Python", "Test"}, true, 666.666} //编码,根据内容生成json文本 buf, err := json.MarshalIndent(s, "", " ") //格式化编码 if err != nil { fmt.Println("err = ", err) return } fmt.Println("buf = ", string(buf)) }
执行结果:
buf = { "company": "itcast", "subjects": [ "Go", "C++", "Python", "Test" ], "isok": true, "price": 666.666 }
原文:https://www.cnblogs.com/nulige/p/10265713.html
内容总结
以上是互联网集市为您收集整理的go语音之进阶篇通过结构体生成json全部内容,希望文章能够帮你解决go语音之进阶篇通过结构体生成json所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。