golang json数组拼接的实例


Posted in Golang onApril 28, 2021

看代码吧~

func main() {
    a := []byte(`{"Parents": [ "aaaaa", "bbbbbbb" ]}`)
    b := []byte(`{"Parents": [ "Gomez", "Moticia" ]}`)
    var arr []interface{}
    js, _ := simplejson.NewJson(a)
    nodes, _ := js.Map()
    p := nodes["Parents"]
    d := p.([]interface{})
    for _, v := range d {
        arr = append(arr, v)
    }
    js, _ = simplejson.NewJson(b)
    nodes, _ = js.Map()
    p = nodes["Parents"]
    d = p.([]interface{})
    for _, v := range d {
        arr = append(arr, v)
    }
    res := make(map[string]interface{})
    res["Parents"] = arr
    c, _ := json.Marshal(res)
    fmt.Println(string(c))
}

结果:

{“Parents”:[“aaaaa”,”bbbbbbb”,”Gomez”,”Moticia”]}

相应的,如果数组里面是interface类型同样适用。

补充:go实现json数组嵌套

引用包 “encoding/json"

定义以下结构体

type person struct {
 Name string  `json:"name"`
 Sex  string  `json:"sex"`
 Age  string  `json:"age"`
}
type test struct {
 Class int   `json:"class"`
 Person []person `json:"person"`
}

创建实例如下

class6 := 
`{ "class":6,
 "person":[{
  "name":"wangha",
  "sex":"male",
  "age":"18"
 },
 {
  "name":"zhang",
  "sex":"female",
  "age":"16"
 }]
}`

对class6进行解析

var keys test
if err := json.Unmarshal([]byte(class6), &keys);err != nil{
 fmt.Println(err)
}else {
 fmt.Printf("%+v\n", keys)
 fmt.Printf("%+v\n", keys.Person[1])
 fmt.Printf("%s\n", keys.Person[0].Sex)
}

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。如有错误或未考虑完全的地方,望不吝赐教。

Golang 相关文章推荐
Go语言-为什么返回值为接口类型,却返回结构体
Apr 24 Golang
用golang如何替换某个文件中的字符串
Apr 25 Golang
golang 实现两个结构体复制字段
Apr 28 Golang
golang 生成对应的数据表struct定义操作
Apr 28 Golang
Golang 实现获取当前函数名称和文件行号等操作
May 08 Golang
go语言基础 seek光标位置os包的使用
May 09 Golang
golang内置函数len的小技巧
Jul 25 Golang
golang实现一个简单的websocket聊天室功能
Oct 05 Golang
golang操作rocketmq的示例代码
Apr 06 Golang
Golang bufio详细讲解
Apr 21 Golang
详解Go语言中Get/Post请求测试
Jun 01 Golang
Python测试框架pytest核心库pluggy详解
Aug 05 Golang
golang 实现对Map进行键值自定义排序
Apr 28 #Golang
go语言中json数据的读取和写出操作
Apr 28 #Golang
golang 实现菜单树的生成方式
Apr 28 #Golang
golang通过递归遍历生成树状结构的操作
Apr 28 #Golang
goland 恢复已更改文件的操作
goland 清除所有的默认设置操作
go 原生http web 服务跨域restful api的写法介绍
Apr 27 #Golang
You might like
php安全之直接用$获取值而不$_GET 字符转义
2012/06/03 PHP
在Yii框架中使用PHP模板引擎Twig的例子
2014/06/13 PHP
你真的了解JavaScript吗?
2007/02/24 Javascript
input 输入框内的输入事件详细分析
2010/03/17 Javascript
Javascript 中的 && 和 || 使用小结
2010/04/25 Javascript
JavaScript中各种编码解码函数的区别和注意事项
2010/08/19 Javascript
简单实用jquery版三级联动select示例
2013/07/04 Javascript
使用JavaScript 编写简单计算器
2014/11/24 Javascript
基于jQuery实现仿搜狐辩论投票动画代码(附源码下载)
2016/02/18 Javascript
浅谈JS原型对象和原型链
2016/03/02 Javascript
原生js代码实现图片放大境效果
2016/10/30 Javascript
JS实现改变HTML上文字颜色和内容的方法
2016/12/30 Javascript
canvas滤镜效果实现代码
2017/02/06 Javascript
如何使用JS在HTML中自定义字符串格式化
2017/07/20 Javascript
node中koa中间件机制详解
2017/08/22 Javascript
input type=file 选择图片并且实现预览效果的实例
2017/10/26 Javascript
bootstrap table合并行数据并居中对齐效果
2018/10/17 Javascript
vue前后分离调起微信支付
2019/07/29 Javascript
vue中的mescroll搜索运用及各种填坑处理
2019/10/30 Javascript
Webpack设置环境变量的一些误区详解
2019/12/19 Javascript
python通过wxPython打开一个音频文件并播放的方法
2015/03/25 Python
用 Python 爬了爬自己的微信朋友(实例讲解)
2017/08/25 Python
Python打包工具PyInstaller的安装与pycharm配置支持PyInstaller详细方法
2020/02/27 Python
PyQt5+python3+pycharm开发环境配置教程
2020/03/24 Python
python实现取余操作的简单实例
2020/08/16 Python
基于Python组装jmx并调用JMeter实现压力测试
2020/11/03 Python
接口自动化多层嵌套json数据处理代码实例
2020/11/20 Python
HTML5 canvas基本绘图之图形变换
2016/06/27 HTML / CSS
新加坡网上化妆品店:Best Buy World
2018/05/18 全球购物
交通安全演讲稿
2014/01/07 职场文书
应届大学生简历中的自我评价
2014/01/15 职场文书
社会治安综合治理管理责任书
2014/04/16 职场文书
运动会广播稿150字(9篇)
2014/09/20 职场文书
音乐研修感悟
2015/11/18 职场文书
python 调用js的四种方式
2021/04/11 Python
python实现图片九宫格分割的示例
2021/04/25 Python