ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

golang json 格式化输出对象

2022-04-27 21:33:48  阅读:203  来源: 互联网

标签:输出 格式化 golang json 数组 字符串 Unmarshal Marshal


Json 形式输出

Golang 如果想要按json字符串的形式输出某个对象,先使用 json.Marshal()函数把对象转换成[]byte数组,然后string(obj)强转成字符串后用%v输出,或者直接使用%s输出

对一个对象marshal后,如果 %s 输出能获取到json格式化后的字符串,如果使用 %v 输出,会输出一个字节数组,因为 Marshal() 函数的返回值是一个字节数组。

指针数组,如果直接用 %v 格式化输出,则打印出一个全是地址的数组。其他类型的对象,如果直接使用 %v输出,会打印所有的字段值,但不是json形式的。

Marshal

func Marshal(v interface{}) ([]byte, error)

marshall:序列化,将字典或者结构体转换成字符串,返回 v 的 json 字符串对应的字节数组。

Unmarshal

func Unmarshal(data []byte, v interface{}) error

Unmarshal 解析 JSON 编码的数据并将结果存储在 v 指向的值中。如果 v 为 nil 或不是指针,则 Unmarshal 返回 InvalidUnmarshalError。

unmarshall:反序列化,字符串转换成字典,结构体

参考: https://pkg.go.dev/encoding/json#Unmarshal

标签:输出,格式化,golang,json,数组,字符串,Unmarshal,Marshal
来源: https://www.cnblogs.com/hi3254014978/p/16200646.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有