无法在golang中解析此json文件

san*_*til 4 json go

我正在尝试编写go代码来解析json文件的以下内容:

{
    "peers": [
        {
            "pid": 1,
            "address": "127.0.0.1:17001"
        },
        {
            "pid": 2,
            "address": "127.0.0.1:17002"
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

到目前为止我能做的就是编写这段代码:

package main

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

type Config struct{
    Pid int
    Address string
}

func main(){
    content, err := ioutil.ReadFile("config.json")
    if err!=nil{
        fmt.Print("Error:",err)
    }
    var conf Config
    err=json.Unmarshal(content, &conf)
    if err!=nil{
        fmt.Print("Error:",err)
    }
    fmt.Println(conf)
}
Run Code Online (Sandbox Code Playgroud)

上面的代码适用于非嵌套的json文件,如下所示:

{
    "pid": 1,
    "address": "127.0.0.1:17001"
}
Run Code Online (Sandbox Code Playgroud)

但即使改变了Config struct这么多次.我无法解析问题开头提到的json文件.有人可以告诉我怎么办?

nem*_*emo 8

您可以使用以下结构定义来映射JSON结构:

type Peer struct{
    Pid int
    Address string
}

type Config struct{
    Peers []Peer
}
Run Code Online (Sandbox Code Playgroud)

比赛的例子.