小编ung*_*chy的帖子

在Go中的特定结构中解组Json数据

我想在Golang中解组以下JSON数据:

b := []byte(`{"Asks": [[21, 1], [22, 1]] ,"Bids": [[20, 1], [19, 1]]}`)
Run Code Online (Sandbox Code Playgroud)

我知道如何做到这一点,我定义了这样的结构:

type Message struct {
    Asks [][]float64 `json:"Bids"`
    Bids [][]float64 `json:"Asks"`
}
Run Code Online (Sandbox Code Playgroud)

我不知道的是,是否有一种简单的方法可以将这一点专门化.我希望在解组之后以这样的格式获取数据:

type Message struct {
    Asks []Order `json:"Bids"`
    Bids []Order `json:"Asks"`
}

type Order struct {
    Price float64
    Volume float64
}
Run Code Online (Sandbox Code Playgroud)

所以我可以在解组之后再使用它:

m := new(Message)
err := json.Unmarshal(b, &m)
fmt.Println(m.Asks[0].Price)
Run Code Online (Sandbox Code Playgroud)

我真的不知道在GO中如何轻松或惯用,所以我希望有一个很好的解决方案.

json struct go

12
推荐指数
1
解决办法
2万
查看次数

标签 统计

go ×1

json ×1

struct ×1