Golang中将结构体json化时,字段的别名

如果没有别名,字串中字段的名称为大写(结构体中小写的字段将返回空串,因为对其他包不可见)

package main

import (
	"fmt"
	"encoding/json"
)

type Cat struct{
	Name string
	Age int
}

func main(){
	var cat = Cat{"大黄", 1}

	// func Marshal(v interface{}) ([]byte, err)
	switch bytes, err := json.Marshal(cat); {
		case err != nil:
			fmt.Println("json时发生错误:", err)
		default:
			fmt.Println("cat进行json化后, []byte =", bytes)
			fmt.Println("json字串为:", string(bytes))
	}
	
	
}

结果

所以要使用别名


结果

posted @ 2021-02-12 15:40  pangqianjin  阅读(1302)  评论(0编辑  收藏  举报