教程集 www.jiaochengji.com
教程集 >  Golang编程  >  golang教程  >  正文 go语言json嵌套数组结构体用法

go语言json嵌套数组结构体用法

发布时间:2022-03-12   编辑:jiaochengji.com
教程集为您提供go语言json嵌套数组结构体用法等资源,欢迎您收藏本站,我们将为您提供最新的go语言json嵌套数组结构体用法资源
<h1>                            go语言json嵌套数组结构体用法</h1> <h3>一、转换思路</h3> <ul><li>一个json对象就是一个结构体</li><li>一个json数组就是一个切片</li><li>json数组放json对象就是切片里面放结构体</li></ul><h3>二、实例</h3> <pre class="has"><code class="language-Go">package main import( "encoding/json" "fmt" ) type Order struct{ OrderId string `json:"order_id"` OrderPrice float64 `json:"order_price"` Goods []Good `json:"good"` } type Good struct{ GoodsName string `json:"goods_name"` GoodsPrice float64 `json:"goods_price"` GoodsColor []Color `json:"Goods_color"` } type Color struct{ GoodColor string `json:"good_color"` } func main(){ var OrderInfo Order OrderInfo.OrderId = "20190707212318" OrderInfo.OrderPrice = 26.87 var csli []Color csli=append(csli,Color{GoodColor:"红色"}) csli=append(csli,Color{GoodColor:"蓝色"}) OrderInfo.Goods =append(OrderInfo.Goods,Good{GoodsName:"手机",GoodsPrice:23.9,GoodsColor:csli}) OrderInfo.Goods =append(OrderInfo.Goods,Good{GoodsName:"电脑",GoodsPrice:123.9,GoodsColor:csli}) data ,_ := json.Marshal(OrderInfo) fmt.Println(string(data)) /* { "order_id": "20190707212318", "order_price": 26.87, "good": [{ "goods_name": "手机", "goods_price": 23.9, "Goods_color": [{ "good_color": "红色" }, { "good_color": "蓝色" }] }, { "goods_name": "电脑", "goods_price": 123.9, "Goods_color": [{ "good_color": "红色" }, { "good_color": "蓝色" }] }] } */ var temp Order err := json.Unmarshal(data,&temp) if err !=nil{ fmt.Println(err) } fmt.Println(temp) //{20190707212318 26.87 [{手机 23.9 [{红色} {蓝色}]} {电脑 123.9 [{红色} {蓝色}]}]} }</code></pre>

 

到此这篇关于“go语言json嵌套数组结构体用法”的文章就介绍到这了,更多文章或继续浏览下面的相关文章,希望大家以后多多支持JQ教程网!

您可能感兴趣的文章:
go语言json嵌套数组结构体用法
Golang 基础教程
go语言JSON处理
处理json数据的原理_3分钟微文档:Go语言解析Json文件,你值得收藏
Golang库集合
Go 语言设计模式系列之一 ——Go 语言中的面向对象
Go语言发展历史、核心、特性及学习路线
golang 结构体断言_Golang的面向对象编程【结构体、方法、继承、接口】-Go语言中文社区...
Go基础及语法(四)
Go语言基础、实战 -- 8. 结构体

[关闭]
~ ~