json - 为什么我无法解析带有 Unmarshal 嵌套数组的 json

标签 json go unmarshalling

这个问题在这里已经有了答案:





json.Unmarshal returning blank structure

(1 个回答)


2年前关闭。




我想使用 json.Unmarshal 解析这个 json在围棋。

{
    "quotes": [
        {
            "high": "1.9981",
            "open": "1.9981",
            "bid": "1.9981",
            "currencyPairCode": "GBPNZD",
            "ask": "2.0043",
            "low": "1.9981"
        },
        {
            "high": "81.79",
            "open": "81.79",
            "bid": "81.79",
            "currencyPairCode": "CADJPY",
            "ask": "82.03",
            "low": "81.79"
        }
    ]
}

来源返回 {[]}关于解析结果。


type GaitameOnlineResponse struct {
    quotes []Quote
}

type Quote struct {
    high             string
    open             string
    bid              string
    currencyPairCode string
    ask              string
    low              string
}

func sampleParse() {
    path := os.Getenv("PWD")
    bytes, err := ioutil.ReadFile(path + "/rate.json")
    if err != nil {
        log.Fatal(err)
    }
    var r GaitameOnlineResponse
    if err := json.Unmarshal(bytes, &r); err != nil {
        log.Fatal(err)
    }
    fmt.Println(r)
    // {[]} 
}

我不知道结果的原因。

最佳答案

我不得不导出。

type GaitameOnlineResponse struct {
    Quotes []Quote
}

type Quote struct {
    High             string
    Open             string
    Bid              string
    CurrencyPairCode string
    Ask              string
    Low              string
}

我解决了。

关于json - 为什么我无法解析带有 Unmarshal 嵌套数组的 json,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59237542/

相关文章:

go - 模板不必要地将 `<` 转义为 `&lt;` 但不是 `>`

go - 通过 GoCQL 在 ScyllaDB 上进行阻塞/一致/可预测的回复/请求

http - 在 Go 中写入响应正文等待客户端读取?

json - 如何在 golang 中解码 JSON

c# - 创建 GeoJson c#

Java Android 使用无键 JSON 对象迭代 JSON 数组

javascript - 如何找到 "SyntaxError: JSON.parse: unexpected character"的原因

json - 使用 spray.json 获取 Json 对象

json - 在golang中解码json数组时出错

java - Api 传输另一个 Api 响应