当前位置: 首页 > news >正文

网站优化师招聘静安正规的设计公司网站

网站优化师招聘,静安正规的设计公司网站,怀化百度关键词优化公司,上海浦东建设管理有限公司网站关于 JSON 数据 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。易于人阅读和编写。同时也 易于机器解析和生成。RESTfull Api 接口中返回的数据都是 json 数据。 Json 的基本格式如下#xff1a; { a: Hello, b: { a: Hello, b: World } 稍微复杂点的 JSON   结构体与 JSON 序列化 注意一个点结构体内的私有属性不能被json包访问如果结构体内部的属性都要就行转换需要全部为公有属性开头字符大写 比如我们 Golang 要给 App 或者小程序提供 Api 接口数据这个时候就需要涉及到结构体和 Json 之间的相互转换。 Golang JSON 序列化 是指把结构体数据转化成 JSON 格式的字符串 结构体 ---- JSON格式字符串 Golang JSON 的反序列化 是指把 JSON 数据转化成 Golang 中的结构体对象。 JSON格式字符串 ---- 结构体 Golang 中 的 序 列 化 和 反 序 列 化 主 要 通 过 encoding/json 包 中 的 json.Marshal() 和json.Unmarshal()方法实现 结构体对象转化成 Json 字符串 package mainimport (encoding/jsonfmt )type Person struct{Name stringGender stringAge int }func main() {var p1 Person{Name: 奥特曼,Gender: 男,Age: 17,}fmt.Printf(%#v\n,p1)jsonByte,_ : json.Marshal(p1)jsonStr : string(jsonByte)fmt.Printf(%#v, jsonStr)}错误案例如下 package mainimport (encoding/jsonfmt )type Person struct{Name stringGender stringage int }func main() {var p1 Person{Name: 奥特曼,Gender: 男,age: 17,}fmt.Printf(%#v\n,p1)jsonByte,_ : json.Marshal(p1)jsonStr : string(jsonByte)fmt.Printf(%#v, jsonStr)}Json 字符串转换成结构体对象 返回一个err 如果err为空转换成功 err非空转换失败 package mainimport (encoding/jsonfmt )type Person struct{Name stringGender stringage int }func main() {var str {Name:奥特曼,Gender:男,Age:17}var p2 Personerr : json.Unmarshal([]byte(str), p2)if err ! nil { fmt.Println(err)}fmt.Printf(%#v\n, p2)fmt.Println(p2.Name)}结构体标签 Tag Tag 是结构体的元信息可以在运行的时候通过反射的机制读取出来。 Tag 在结构体字段的后方定义由一对反引号包裹起来具体的格式如下 key1:value1 key2:value2 结构体 tag 由一个或多个键值对组成。键与值使用冒号分隔值用双引号括起来。 同一个结构体字段可以设置多个键值对 tag不同的键值对之间使用空格分隔。 注意事项 为结构体编写 Tag 时必须严格遵守键值对的规则。 结构体标签的解析代码的容错能力很差一旦格式写错编译和运行时都不会提示任何错误通过反射也无法正确取值。 例如不要在 key 和 value 之间添加空格。 通过指定 tag 实现 json 序列化该字段时的 key 嵌套结构体和 JSON 序列化反序列化  package mainimport (encoding/jsonfmt ) type Person struct{Name string json:nameGender string json:genderAge int json:age }type Group struct{Intrasting stringPerson []Person } func main() {h : Group{Intrasting: 绘画,Person: make([]Person, 0),}for i : 17; i 20; i {p : Person{Name :fmt.Sprintf(编号%v, i), //字符串类型Gender:男,Age : i1,}h.Person append(h.Person, p) //将P里的东西添加到实例化的h后的切片内}// fmt.Println(c)strByte, err : json.Marshal(h)if err ! nil {fmt.Println(err)} else {strJson : string(strByte)fmt.Println(strJson)} }逆序退回 package mainimport (encoding/jsonfmt )type Person struct{Name string json:nameGender string json:genderAge int json:age }type Group struct{Intrasting stringPerson []Person }func main() {jsonStr : {Intrasting:绘画,Person:[{name:编号17,gender:男,age:18},{name:编号18,gender:男,age:19},{name:编号19,gender:男,age:20}]}var h Group{}err : json.Unmarshal([]byte(jsonStr), h)if err ! nil {fmt.Println(err)} else {fmt.Printf(%#v\n, h)fmt.Printf(%v, h.Intrasting)} }
http://www.hkea.cn/news/14389823/

相关文章:

  • 建设银行对账网站公司网站怎么做分录
  • python建设网站国内餐饮类网站欣赏
  • 网站推广的一般方式海南门户网站开发公司
  • 企业网站建设推广实训报告怎么做一个网站 免费
  • 怎样做企业手机网站建设南宁优质手机网站建设公司
  • 滁州市大滁城建设网站wordpress 切换
  • 网页网站怎么做的吗wordpress页面链接404
  • 什么是网站设计网站 用户体验 考虑
  • 做网站 域名 服务器的关系哪里有做标书
  • 网站收录作用厦门海沧建设局网站
  • 网站开发的形式有多种方式阿里 域名解析 网站建设
  • 织梦做的网站页面打不开汕头seo外包服务
  • 在线教育网站模板网站建设 中
  • 找建设网站公司吗网络营销是什么的定义
  • 提供手机网站制作建设银行网盾进不去网站是怎么办
  • 肇庆做网站设计搜索公司信息的网站
  • 时代设计网 新网站网站响应式技术
  • 在线制作图网站洛阳网站建设找汉狮
  • 商丘哪里做网站钓鱼平台设计
  • 桌面网站怎么做wordpress 用户登录
  • 网站备案拍照背景幕布深圳自适应网站公司
  • 网站域名注册机制一个公司怎么做网站都放些什么
  • 建行深圳网站衡水龙腾网站建设
  • 河南智能网站建设平台百度关键词优化企业
  • 视频网站开发前景如何ps个人网站的首页界面
  • seo是什么服西安seo代理计费
  • 茂名市网站建设电子商务网站建设考试
  • 网站集约化建设的建议织梦网站如何上传
  • 网站直接访问网站服务器维护工具
  • 天天清茶 湖南网站建设手机建站哪家好