• Go 语言中 json 的操作以及常见问题

    18-06-16 17:04 23283 1 技术

    常见问题

    结构体里的字段首字母必须大写

    type Person struct{
        Name string
        Age int
    }
    
    func main(){
      person := Person{"小明",18}
      if result, err := json.Marshal(&person);err == nil {
        fmt.Println(string(result))
      }
    }
    

    控制台输出:{"Name":"小明","Age":18} > 如果字段首字母为小写的话,解析会有问题,得到的值为空。

    可以通过字段的 tag 指定 struct 转 json 后的首字母小写

    type Person struct {
        Name string `json:"name"`    
        Age int `json:"age"`
        Time int64 `json:"-"` // 忽略字段
    }
    
    func main(){
      person:=Person{"小明",18, time.Now().Unix()}
      if result,err:=json.Marshal(&person);err==nil{
         fmt.Println(string(result))
      }
    }
    

    控制台输出:{"name":"小明","age":18}

文章归档

文章日历

2018 年 06 月
26 27 28 29 30 01 02
03 04 05 06 07 08 09
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

文章标签

最新评论

友情链接