版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_33781658/article/details/83750382
先来说结构体
func main() { stu:=Student{"张三",20,[]string{"男","未婚"}} bytes, err := json.Marshal(stu) if err != nil { fmt.Println(err) return } fmt.Println(string(bytes)) } type Student struct { Name string Age int Data []string }
我们来看看转换的json结果
{"Name":"张三","Age":20,"Data":["男","未婚"]}
这里的key必须是首字母大写,如果不想要首字母大写
我们可以用struct结构体的tag
type Student struct { Name string `json:"name"` Age int `json:"age"` Data []string `json:"data"` }
注意这里的tag要用`这个符号哦 ```
然后如果我们想把json格式化一下
可以用另一个方法
func main() { stu := Student{"张三", 20, []string{"男", "未婚"}} bytes, err := json.MarshalIndent(stu, "", " ") if err != nil { fmt.Println(err) return } fmt.Println(string(bytes)) } type Student struct { Name string `json:"name"` Age int `json:"age"` Data []string `json:"data"` }
再看一下输出的json结果
{
"name": "张三",
"age": 20,
"data": [
"男",
"未婚"
]
}
这样就已经格式化好了
更加的美观