当前位置: 首页 > 知识库问答 >
问题:

在Java中基于键和值获取数组中的json对象

裴俊迈
2023-03-14

我有一个如下面示例所示的Json主体。我需要从一个键中提取值,该键在数组中有另一个具有特定值的键。我在传递一个JSONode,其中包含消息的细节组件中的所有内容,我可以很容易地从每个级别提取,但是,我在处理数组时遇到了困难。

在本例中,我需要从数组中的对象中提取值“value”(警察/消防/事故报告),该对象具有一个键/值对“name”:“documenttitle”。我知道这是一个JSONArray,但我找不到一个很好的例子来说明如何在包含某个键/值对的数组中提取对象的值,我认为我不能依赖于将对象放在数组中的位置[2],因为additionalMetadata数组中可能并不总是存在相同的对象。

示例JSON:

    "sourceVersion": "1.0",
    "eventId": "8d74b892-810a-47c3-882b-6e641fd509eb",
    "clientRequestId": "b84f3a7b-03cc-4848-a1e8-3519106c6fcb",
    "detail": {
        "stack": "corona",
        "visibilityIndicator": null,
        "documentUid": "b84f3a7b-03cc-4848-a1e8-3519106c6fcb",
        "additionalMetadata": [
            {
                "name": "lastModifiedDate",
                "value": "2021-05-21T04:53:53Z"
            },
            {
                "name": "documentName",
                "value": "Police/Fire Report, 23850413, 2021-05-20 14:51:23"
            },
            {
                "name": "documentTitle",
                "value": "Police/Fire/Accident Report"
            },
            {
                "name": "documentAuthor",
                "value": "System Generated"
            },
            {
                "name": "lastModifiedBy",
                "value": "System Updated"
            },
            {
                "name": "createdBy",
                "value": "System Generated"
            },
            {
                "name": "documentDescription",
                "value": "Police/Fire Report received"
            },
            {
                "name": "organizationCode",
                "value": "Claims"
            }
        ]
    }
}```

共有1个答案

耿星雨
2023-03-14

遍历json数组并提取名为DocumentTitile的json对象。从该json对象中可以获得

 类似资料:
  • 我的 json 对象中有一个键值对数组,需要根据键等于主机拉出一个设置值。 我无法基于位置进行匹配,因为它可能位于成对数组中的任何位置,而且数组的大小可能会有所不同。 我当前的 Jolt 规格看起来像,但它只是列出了每对: 当前输出为: 我希望的输出如下,注意到字段名称的更改: 我想知道我是否需要先做一个修改-覆盖-测试操作,然后再进行一次转换?

  • 问题内容: 我是JSON的新手。因此,如果这是一个非常基本的疑问,请不要责骂我。我有一个JSON对象参考,我想获取Key(对象只有一个“键值对”)。如何在Java中获得它? 问题答案: 您可以用来获取所有密钥。然后,您可以遍历密钥以从中获得第一个密钥,例如:

  • 问题内容: 上面的示例json数组,如何获取204、203和202?谢谢 我试过了: 问题答案: 上面的示例json数组,如何获取204、203和202? 不,当前的String 代替。您应该使用JSONObject获取Iterator 。keys()如果内部JSONObject键动态为:

  • 我一直在尝试几种方法来找到数组中的对象,其中ID=var,如果找到了,就从数组中删除该对象并返回新的对象数组。 数据: 数据:

  • 我希望在迭代的帮助下获得JSON对象键及其元素的各个值 我的json会像这样:-

  • 问题内容: 我正在返回一个json,如下所示 我正在尝试获取每个元素的键和值: 我正在戒备。为什么?我尝试过,我尝试循环但没有成功。 问题答案: 检查这个jsfiddle 从 jQuery 3.0开始 ,不推荐使用$ .parseJSON。要解析JSON字符串,请改用本机JSON.parse方法。 来源:http://api.jquery.com/jquery.parsejson/