Go語言中轉(zhuǎn)換JSON數(shù)據(jù)簡(jiǎn)單例子
Go語言轉(zhuǎn)換JSON數(shù)據(jù)真是非常的簡(jiǎn)單。
以EasyUI的Demo為例,將/demo/datagrid/datagrid_data1.json 拷貝到$GOPATH/src目錄:
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綁定到結(jié)構(gòu)體,結(jié)構(gòu)體的字段一定要大寫,否則不能綁定數(shù)據(jù)。
相關(guān)文章
Go語言實(shí)現(xiàn)LRU算法的核心思想和實(shí)現(xiàn)過程
這篇文章主要介紹了Go語言實(shí)現(xiàn)LRU算法的核心思想和實(shí)現(xiàn)過程,LRU算法是一種常用的緩存淘汰策略,它的核心思想是如果一個(gè)數(shù)據(jù)在最近一段時(shí)間內(nèi)沒有被訪問到,那么在將來它被訪問的可能性也很小,因此可以將其淘汰,感興趣想要詳細(xì)了解可以參考下文2023-05-05GoFrame?gredis緩存DoVar及Conn連接對(duì)象的自動(dòng)序列化
這篇文章主要為大家介紹了GoFrame?gredis干貨DoVar?Conn連接對(duì)象自動(dòng)序列化詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06web項(xiàng)目中g(shù)olang性能監(jiān)控解析
這篇文章主要為大家介紹了web項(xiàng)目中g(shù)olang性能監(jiān)控詳細(xì)的解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪2022-04-04go語言實(shí)現(xiàn)字符串base64編碼的方法
這篇文章主要介紹了go語言實(shí)現(xiàn)字符串base64編碼的方法,實(shí)例分析了Go語言操作字符串的技巧及base64編碼的使用技巧,需要的朋友可以參考下2015-03-03詳解Golang函數(shù)式選項(xiàng)(Functional?Options)模式
什么是函數(shù)式選項(xiàng)模式,為什么要這么寫,這個(gè)編程模式解決了什么問題呢?其實(shí)就是為了解決動(dòng)態(tài)靈活的配置不同的參數(shù)的問題。下面通過本文給大家介紹Golang函數(shù)式選項(xiàng)(Functional?Options)模式的問題,感興趣的朋友一起看看吧2021-12-12mac下golang安裝了windows編譯環(huán)境后編譯變慢
這篇文章主要介紹了mac下golang安裝了windows編譯環(huán)境后編譯變慢的處理方法,非常的簡(jiǎn)單,有相同問題的小伙伴可以參考下。2015-04-04Golang編程并發(fā)工具庫(kù)MapReduce使用實(shí)踐
這篇文章主要為大家介紹了Golang并發(fā)工具庫(kù)MapReduce的使用實(shí)踐,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-04-04