GO 结构体转json

向右看齐 2022-11-14 11:49 264阅读 0赞

将结构体的值转化成其他的类型可通过Tag来定义,Tag最常用在marshaling。

  1. import (
  2. "encoding/json"
  3. "fmt"
  4. )
  5. func main() {
  6. type T struct {
  7. F1 int `json:"f_1"`
  8. F2 int `json:"f_2,omitempty"`
  9. F3 int `json:"f_3,omitempty"`
  10. F4 int `json:"-"`
  11. }
  12. t := T{1, 0, 2, 3}
  13. b, err := json.Marshal(t)
  14. if err != nil {
  15. panic(err)
  16. }
  17. fmt.Printf("%s\n", b) // {"f_1":1,"f_3":2}
  18. }

omitempty:作用是在json数据结构转换时,当该字段的值为该字段类型的零值时,忽略该字段

发表评论

表情:
评论列表 (有 0 条评论,264人围观)

还没有评论,来说两句吧...

相关阅读

    相关 go语言结构

    Go语言中没有“类”的概念,也不支持“类”的继承等面向对象的概念。Go语言中通过结构体的内嵌再配合接口比面向对象具有更高的扩展性和灵活性。 类型别名和自定义类型 自定

    相关 go结构结构变量

    一 结构体和结构体变量的区别和联系 1 结构体是自定义的数据类型,代表一类事物。 2 结构体变量(实例)是具体的,实际的,代表一个具体变量。 二 结构体变量在内存的