簡體   English   中英

GoLang中的Marshall和UnMarshall JSON內容

[英]Marshall and UnMarshall JSON Content in GoLang

我有一個樣本json文件,其結構如下

{
  "method":"brute_force",
  "bc":"select * from blah;",
  "gc":[
    "select sum(year) from blah;",
    "select count(*) from table;"
      ]
}

我正在嘗試編寫一個可以讀取此文件並運行json內容的go程序。

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


type Response2 struct {
    method string
    bc string
    gc []string
}

func main() {
    file,_ := ioutil.ReadFile("config.json")
    fmt.Printf("%s",string(file))

        res := &Response2{}


        json.Unmarshal([]byte(string(file)), &res)
        fmt.Println(res)

        fmt.Println(res.method)
        fmt.Println(res.gc)

}

res.method和res.gc不打印任何東西。 我不知道什么是錯的。

type Response2 struct {
    method string
    bc string
    gc []string
}

字段名稱必須為大寫,否則Json模塊無法訪問它們(它們對您的模塊是私有的)。 您可以使用json標記指定Field和name之間的匹配項

type Response2 struct {
    Method string `json:"method"`
    Bc string `json:"bc"`
    Gc []string `json:"gc"`
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM