这篇文章主要介绍了Go语言中转换JSON数据简单例子,本文先定义了一个结构体,然后把JSON绑定到结构体上实现读取,需要的朋友可以参考下    

Go语言转换JSON数据真是非常的简单。
以EasyUI的Demo为例,将/demo/datagrid/datagrid_data1.JSON 拷贝到$GOPATH/src目录:

Go语言中转换JSON数据简单例子(go字符串转json)  Go语言 JSON 脚本之家 第1张

JSON.go:

复制代码代码如下:
package main

 

import (
        "encoding/json"
        "fmt"
        "io/ioutil"
)

type product struct {
        Productid string
        Productname string
        Unitcost float32
        Status string
        Listprice float32
        Attr1 string
        Itemid string
}

type grid struct {
        Total int 
        Rows []product
}

func main() {
        var grid grid 
        data, err := ioutil.ReadFile("datagrid_data1.json")
        if err != nil {
                fmt.Println("ReadFile:", err.Error())
        } 
        json.Unmarshal(data, &grid)
        fmt.Println(grid)
        fmt.Println("----------------------------")
        b, _ := json.Marshal(grid)
        fmt.Println(string(b))
}

 

将JSON绑定到结构体,结构体的字段一定要大写,否则不能绑定数据。