Go by Example-golang操作json

2023-11-06

package main

//Go by Example 中文:JSON 微信:6686496
import (
	"encoding/json"
	"fmt"
	"os"
)
type Response1 struct {
	Page int
	Fruits []string
}
type Response2 struct {
	Page int `json:"page"`
	Fruits []string `json:"fruits"`
}

func main() {

	//基本数据类型到 JSON 字符串的编码
	bolB,_:=json.Marshal(true)
	fmt.Println(string(bolB))

	intB,_:=json.Marshal(1)
	fmt.Println(string(intB))

	fltB,_:=json.Marshal(2.34)
	fmt.Println(string(fltB))

	strB,_:=json.Marshal("gopher")
	fmt.Println(string(strB))

	slcD:=[]string{"apple","peach","pear"}
	slcb,_:=json.Marshal(slcD)
	fmt.Println(string(slcb))

	mapD:=map[string]int{"apple":5,"lettuce":7}
	mapB,_:=json.Marshal(mapD)
	fmt.Println(string(mapB))

	//JSON 包可以自动的编码你的自定义类型。编码仅输出可导出的字段,并且默认使用他们的名字作为 JSON 数据的键。
	res1D:=&Response1{
		Page:   1,
		Fruits: []string{"apple","peach","pear"},
	}
	res1B,_:=json.Marshal(res1D)
	fmt.Println(string(res1B))

	//标签对应后,输出标签json
	res2D:=Response2{
		Page:   1,
		Fruits: []string{"apple","peach","pear"},
	}
	res2B,_:=json.Marshal(res2D)
	fmt.Println(string(res2B))

	byt:=[]byte(`{"num":6.13,"strs":["a","b"]}`)
	var dat map[string]interface{}

	if err:=json.Unmarshal(byt,&dat);err!=nil{
		panic(err)
	}
	fmt.Println(dat)
	num:=dat["num"].(float64)
	fmt.Println(num)

	strs:=dat["strs"].([]interface{})
	str1:=strs[0].(string)
	fmt.Println(str1)

	str:=`{"page":1,"fruits":["apple","peach"]}`
	res:=&Response2{}
	json.Unmarshal([]byte(str),&res)
	fmt.Println(res)
	fmt.Println(res.Fruits[0])

	//我们也可以和os.Stdout 一样,直接将 JSON 编码直接输出至 os.Writer流中,或者作为 HTTP 响应体
	enc:=json.NewEncoder(os.Stdout)
	d:=map[string]int{"apple":5,"lettuce":7}
	enc.Encode(d)



}

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Go by Example-golang操作json 的相关文章

  • ZF2 查看攻略

    我正在尝试执行以下操作 简单的控制器和动作 Action 应根据请求返回 2 种类型的响应 HTML in case of ordinary request text html JSON in case of ajax request ap
  • 如何在 Swift 4 中传递 Encodable 或 Decodable 作为参数?

    我正在学习 JSONParsing 我遵循了教程 得到的是这样的 guard let url URL string http localhost test api public api register else return var re
  • VBA - HTML 抓取问题

    我正在尝试从网站上抓取拍卖数据https www rbauction com heavy equipment auctions https www rbauction com heavy equipment auctions 我当前的尝试是
  • PostMan 测试脚本:检查响应 JSON 的内容

    邮差 6 0 10 在这里 我试图了解如何更好地编写测试脚本 并在阅读了其他内容之后优秀的文档 https www getpostman com docs v6 postman scripts test scripts对于如何查询和检查从请
  • WebSocket如何压缩消息?

    JSON stringify 显然空间利用率不高 例如 123456789 123456789 占用 20 多个字节 而它可能只需要大约 5 个字节 websocket 在发送到流之前是否会压缩其 JSON WebSocket 的核心只是一
  • 将 Javascript 类数组传递给 MVC 控制器?

    我正在尝试将一系列服务传递给我的控制器 我尝试了很多不同的方法来让它工作 在进入控制器之前序列化数据 序列化每个服务 唯一有效的方法是将控制器参数更改为字符串并序列化数组 然后使用 JsonConvert 但我 d 宁愿不这样做 使用指定的
  • JSON 解析器从大型 JSON 文件中逐条读取

    我有一个巨大的 JSON 文件 1GB 它基本上是以下格式的对象数组 x y p q x1 y1 p1 q1 我想解析这个文件 这样所有的数据都不会加载到内存中 基本上我想获取例如 数组中的前 1000 个对象进行内存处理 然后将接下来的
  • Python for 循环仅返回字典的最后一个值

    我正在尝试在 python 中创建一个带有 xyz 坐标的 json 转储 但是我用来遍历不同组的 for 循环仅返回最后一个组 self group strings CHIN L EYE BROW R EYE BROW L EYE R E
  • 在 JavaScript 中按属性过滤 JSON 数据

    我有一个 JSON 序列化集合 id person1 date 7 20 2014 17 20 09 listed name Tom name Tom contact info email protected cdn cgi l email
  • 在处理程序之后访问 HTTP 请求上下文

    在我的日志记录中间件 链中的第一个 中 我需要访问一些在链下游的某些身份验证中间件中编写的上下文 并且仅在处理程序本身执行之后 旁注 需要首先调用日志记录中间件 因为我需要记录请求的持续时间 包括在中间件中花费的时间 此外 当权限不足时 身
  • Gorm 总是返回带有 nil 值的结构

    我正在使用 Gorm 构建 Go Web API 作为 Amazon RDS 中 Postgresql 数据库的 ORM 问题是 Gorm 总是返回一片结构 其值全部为零 尽管数据库已经填充了数据 切片中的结构体数量是否合适取决于LIMIT
  • 应用程序内的 SQLite 文件版本兼容性

    我有一个 C NET 应用程序 一种复杂的计算应用程序 其中用户输入数据 处理后的信息使用 JSON 序列化和 EF 保存到 SQLite 文件中 需要时可以将其加载到我们的应用程序中 应用程序在开发过程中经历了很多变化 类也被修改 因此
  • 编码的 nsdata utf8 json,在 ios 中带有重音字符

    我向网络服务器发出一个发布请求 该服务器用 JSON 回答我 这是响应的标头 Cache Control private Content Length 826 Content Type application json charset ut
  • 使用 YAML.load 解析 json 安全吗?

    我使用的是红宝石2 1 0 我有一个 json 文件 例如 测试 json item apple 1 banana 2 使用 YAML load 加载此文件是否安全 YAML load File read test json 我正在尝试加载
  • 如何从非英语字符串解析go中的月份

    我想将以下字符串解析为 go 中的日期 This item will be released on March 9 2014 我跟着this https stackoverflow com questions 14106541 go par
  • JSON对象的长度[重复]

    这个问题在这里已经有答案了 该函数生成一个包含 json 对象的数组 var estoque function unpack estoque tnm total estoque vl id tid st tnm tnm split tota
  • 如何在 Flask 中获取 POSTed JSON?

    我正在尝试使用 Flask 构建一个简单的 API 现在我想在其中读取一些 POSTed JSON 我使用 Postman Chrome 扩展进行 POST 我 POST 的 JSON 很简单 text lalala 我尝试使用以下方法读取
  • 为什么 JSON 结果可以是布尔值而不是对象或数组?

    From JSON 网站 http json org JSON 建立在两种结构之上 名称 值对的集合 在各种语言中 这被实现为对象 记录 结构 字典 哈希表 键控列表或关联数组 值的有序列表 在大多数语言中 这被实现为数组 向量 列表或序列
  • 使用 JSON.NET 将 JSON 数据反序列化为 C#

    我对使用 C 和 JSON 数据比较陌生 正在寻求指导 我使用的是 C 3 0 NET3 5SP1 和 JSON NET 3 5r6 我有一个已定义的 C 类 需要从 JSON 结构填充该类 但是 并非从 Web 服务检索的条目的每个 JS
  • PHP 数组通过 JSON 转为 jquery 数组

    我有点困惑为什么以下不起作用 get php

随机推荐

  • C++实用案例:杨辉三角形

    前言 今天我们要讲的是 C 实用案例 杨辉三角形 这是一个简单又典型的递推算法的题目 一 理清思路 杨辉三角形是一个简单的数学模型 其中 最左侧的数和最右侧的数都是1 剩余的数是上面两数之和 每一行都比上一行多一个数 一次往下 如图 于是
  • JAVA java学习(21)——————java变量的作用域:静态变量、全局变量和局部变量

    变量的作用域规定了变量所能使用的范围 只有在作用域范围内变量才能被使用 根据变量声明地点的不同 变量的作用域也不同 根据作用域的不同 一般将变量分为不同的类型 成员变量和局部变量 成员变量 Java 的成员变量有两种 分别是全局变量和静态变
  • Android 百度地图开发(一)--- 申请API Key和在项目中显示百度地图

    转载请注明地址http blog csdn net xiaanming article details 11171581 最近自己想研究下地图 本来想研究google Map 但是申请API key比较坑爹 于是从百度地图入手 其实他们的用
  • 服务器学习教程大纲

    服务器学习教程大纲 第一章 服务器基础 1 1 服务器概述 服务器的定义和作用 服务器的分类和发展趋势 1 2 服务器硬件基础 服务器硬件的基本组成和工作原理 服务器硬件的选择和配置 1 3 服务器软件基础 服务器软件的基本概念和分类 服务
  • 语音识别的技术原理是什么?

    https www zhihu com question 20398418
  • STL——空间配置器剖析(一级空间配置器、二级空间配置器的本质及运用场合,是如何用内存池去管理的)

    一级空间配置器 二级空间配置器的本质及运用场合 是如何用内存池去管理的 研究了好久才写好的 主要是二级配置器 大标题小标题什么的可能没有安排好 先 写了原理上的内容 再剖析了各个函数源码 各个目录可以看csdn自带的目录 如何使用空间配置器
  • 关于 SELECTPAGE 方法的使用

    源码 根据 entity 条件 查询全部记录 并翻页 param page 分页查询条件 可以为 RowBounds DEFAULT param queryWrapper 实体对象封装操作类 可以为 null p gt P selectPa
  • bash: 无法执行二进制文件: 可执行文件格式错误

    今天客户送来一台笔记本 说是 银河麒麟电脑 让我在这台电脑上跑程序 在工作机上 银河麒麟V10 发布了可执行程序 将可执行程序拷贝到这台笔记本上 双击执行无反应 在终端执行 提示 bash xxxxx 无法执行二进制文件 可执行文件格式错误
  • maven managed dependencies找不到maven管理依赖的原因及解决方法

    图一 图二 选择图二maven managed dependencies之后在图一那里没显示 原因 工程不是maven工程 解决方法1 重新用ecplise建个maven工程 然后把你的代码导入新工程 运行ok 解决方法2 添加maven支
  • springboot+prometheus+grafana实现应用监控和报警 - windows版

    Prometheus官网 https prometheus io docs introduction first steps Grafana官网 https grafana com docs grafana latest SpringBoo
  • 递归的学习

    递归学习 递归三大要素 第一 明确函数要干什么 第二 寻找递归结束的条件 第三 找出函数等价的关系式 递归求和 方法一 ls 1 2 3 4 5 def fun ls n if n 0 return ls n else s fun ls n
  • Java从入门到实战总结-3.5、Java网络编程

    Java从入门到实战总结 3 5 Java网络编程 文章目录 Java从入门到实战总结 3 5 Java网络编程 1 网络简述 1 什么是计算机网络 2 什么是计算机的IP地址 3 什么是网络中网站的域名 4 什么是计算机的端口号 5 什么
  • 2种指定包的类代码扫描及爬坑(主要是Reflections的问题点)

    一 Reflections maven
  • 自动驾驶仿真工具之CARLA简介

    大家好 我已经把CSDN上的博客迁移到了知乎上 欢迎大家在知乎关注我的专栏慢慢悠悠小马车 https zhuanlan zhihu com duangduangduang 希望大家可以多多交流 互相学习 自动驾驶算法的调试和效果评测首先要在
  • C++中常用字符串相关的编程题

    索引 找出字符串中的数字 字母和符号 并分别存储 找出字符串中所有不重复的字符 并输出 统计字符串中每个字符的个数 并输出 编译环境 以下所用的开发环境是vs2010 创建的都为控制台输出程序 下面只贴出创建项目后修改了的cpp文件 即主要
  • python的魔法函数

    一 介绍 在Python中 魔法函数是以双下划线 开头和结尾的特殊函数 它们在类定义中用于实现特定的行为 例如运算符重载 属性访问 迭代等 以下是一些常见的Python魔法函数 init 这是一个特殊的构造函数 在创建类的实例时自动调用 用
  • COOC软件一款用于文献计量和知识图谱绘制的新软件

    以前论文写作中做一个共现矩阵 二模矩阵 聚类图谱 词云图 邻接表 相异矩阵 同义词批量合并 研究热点追踪等分析需要一小时 一天 对于小白甚至需要一周 一个月 但是利用COOC这款软件 你会体会到什么叫方法比努力更重要 好的工具会让你事半功倍
  • 在浏览器中播放m3u8

    我自己做了个简单的demo地址 https github com onyas vip url resolve 欢迎star或fork 在浏览器上播放m3u8的视频地址有两种方式 html的video标签的方式 这种方式播放很简单
  • 使用element-ui出现的问题——loading加载被弹窗遮挡

    正常显示如下图 loading加载被弹窗遮挡如下图 网上搜了很多的文章 尝试了很多的方法 有说在弹出层上面添加opend方法 在这个方法里面调用接口 试过无效 还有的说在setTimeout里面调用请求 依旧不行 最后用了如下简单粗暴的方式
  • Go by Example-golang操作json

    package main Go by Example 中文 JSON 微信 6686496 import encoding json fmt os type Response1 struct Page int Fruits string t