Go语言之通过结构体生成json

2020-07-21  本文已影响0人  测试探索
package main

import (
    "encoding/json"
    "fmt"
)


type IT struct {
    Company string
    Subjects []string
    Isok bool
    Price float64
}

func main(){
//  定义一个结构体变量,同时初始化
    s := IT{"itcase",[]string{"go","python","test"},true,66.66}

//  编码,根据内容生成json文本
    buf,err := json.Marshal(s)
    if err != nil {
        fmt.Println("err = ",err)
        return
    }

    fmt.Println(string(buf))
}
#结果
{"Company":"itcase","Subjects":["go","python","test"],"Isok":true,"Price":66.66}

格式化代码MarshalIndent
package main

import (
    "encoding/json"
    "fmt"
)


type IT struct {
    Company string
    Subjects []string
    Isok bool
    Price float64
}

func main(){
//  定义一个结构体变量,同时初始化
    s := IT{"itcase",[]string{"go","python","test"},true,66.66}

//  编码,根据内容生成json文本
//  buf,err := json.Marshal(s)
    buf,err := json.MarshalIndent(s,""," ")
    if err != nil {
        fmt.Println("err = ",err)
        return
    }

    fmt.Println(string(buf))
}
#结果
{
 "Company": "itcase",
 "Subjects": [
  "go",
  "python",
  "test"
 ],
 "Isok": true,
 "Price": 66.66
}


上一篇 下一篇

猜你喜欢

热点阅读