GO 结构体转json
将结构体的值转化成其他的类型可通过Tag来定义,Tag最常用在marshaling。
import (
"encoding/json"
"fmt"
)
func main() {
type T struct {
F1 int `json:"f_1"`
F2 int `json:"f_2,omitempty"`
F3 int `json:"f_3,omitempty"`
F4 int `json:"-"`
}
t := T{1, 0, 2, 3}
b, err := json.Marshal(t)
if err != nil {
panic(err)
}
fmt.Printf("%s\n", b) // {"f_1":1,"f_3":2}
}
omitempty:作用是在json数据结构转换时,当该字段的值为该字段类型的零值时,忽略该字段
还没有评论,来说两句吧...