golang使用标准库encoding/json序列化和反序列化

本文介绍了Golang如何使用标准库encoding/json进行JSON的序列化和反序列化操作,包括struct转json、map转json、json转struct以及json转map的示例代码和结果展示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

简介

golang 中 json 的序列化可以使用 golang 官方库中自带的 encoding/json 序列化工具,也可以使用第三方库中的 json-iterator,它更加高效

encoding/json 中序列化和反序列化的方法中,被序列化的类型和 []byte 类型是需要注意的关键数据类型

序列化

序列化是将对象的状态信息转换为可以存储或传输的形式的过程,encoding/json 中 Marshal 函数返回值是一个 []byte,所以一般最后需要转成 string 打印呈现出来

关键代码还是如下

// Marshal 函数用来序列化,返回 []byte, error
sli, err := json.Marshal(结构体或者 map