Marshal

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

把对象转换为JSON:
• 布尔型转换为 JSON 后仍是布尔型 , 如true -> true

• 浮点型和整数型转换后为JSON里面的常规数字,如 1.23 -> 1.23

• 字符串将以UTF-8编码转化输出为Unicode字符集的字符串,特殊字符比如<将会被转义为\u003c

• 数组和切片被转换为JSON 里面的数组,[]byte类会被转换为base64编码后的字符串,slice的零值被转换为null

• 结构体会转化为JSON对象,并且只有结构体里边以大写字母开头的可被导出的字段才会被转化输出,而这些可导出的字段会作为JSON对象的字符串索引

• 转化一个map 类型的数据结构时,该数据的类型必须是 map[string]T(T 可以是encoding/json 包支持的任意数据类型)

Json序列化操作

 

Json反序列化操作