json - 无法解析JSON和提取值

标签 json go

我是Go lang的新手,它试图解析以下形式的JSON并在records数组中获取所有对象。

[
    {
        "records": [
         {"name":"value"},{"name":"value"}
        ]
    },
    {
        "records": [
         {"name":"value"},{"name":"value"}
        ]
    }
]

我尝试使用“github.com/tidwall/gjson”库,但无法解析。谁能帮我这个?

最佳答案

您可以使用encoding/json包。首先定义变量类型,考虑您的json的数据结构。然后使用json.Unmarshal()将json字符串转换为变量。

示例:对于给定的结构,我使用了[]map[string][]map[string]string
代码:

package main

import (
    "encoding/json"
    "fmt"
)

func main() {
    myJsonString := `[
    {
        "records": [
         {"name":"value"},{"name":"value"}
        ]
    },
    {
        "records": [
         {"name":"value"},{"name":"value"}
        ]
    }
]`
    myStoredVariable := []map[string][]map[string]string{}
    json.Unmarshal([]byte(myJsonString), &myStoredVariable)
    fmt.Printf("%v\n", myStoredVariable[0]["records"][0]["name"])

}

关于json - 无法解析JSON和提取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61249781/

相关文章:

用于通过 RPC 传递匿名函数的 GobEncoder

c - 求和,数组构造和寻址的简洁二叉树

json - 将 Json 数据绑定(bind)到 Kendo treeview MVC4

java - Nodejs 在 Java 程序成功 POST 时并不总是触发 'data' 事件

javascript - 尝试通过 json 在 html 页面中显示 NEO4J 数据

json - 在 Go 中的 json.Marshal 期间锁定对象

go - html/template 直接调用值的方法

mongodb - 如何在mongodb中向数组添加对象

variables - Go中float64和complex128类型的最大值

javascript - 将数组转换为 Json