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

获取JSON字符串中的所有键

惠翰藻
2023-03-14

我有一个json字符串,我需要验证它,并在json字符串中找到列表以外的任何其他键。示例json字符串为

{
    "required" : true,
    "requiredMsg" : "Title needed",
    "choices" : [ "a", "b", "c", "d" ],
    "choiceSettings" : {
        "a" : {
            "exc" : true
        },
        "b" : { },
        "c" : { },
        "d" : {
            "textbox" : {
                "required" : true
            }
        }
    },
    "Settings" : {
        "type" : "none"
    }
}
        JsonNode rootNode = mapper.readTree(option);
        JsonNode reqiredMessage = rootNode.path("reqiredMessage");             
        System.out.println("msg   : "+  reqiredMessage.asText());            
        JsonNode drNode = rootNode.path("choices");
        Iterator<JsonNode> itr = drNode.iterator();
        System.out.println("\nchoices:");
        while (itr.hasNext()) {
            JsonNode temp = itr.next();
            System.out.println(temp.asText());
        }    

如何使用jsonnode从json字符串中获取所有键

共有1个答案

鲁丰
2023-03-14

foreach将迭代JSONNode(打印时转换为string)的子级,而fieldnames()将获取键上的迭代器 。下面是示例JSON的一些打印元素的示例:

JsonNode rootNode = mapper.readTree(option);

System.out.println("\nchoices:");
rootNode.path("choices").forEach(System.out::println);

System.out.println("\nAllKeys:");
rootNode.fieldNames().forEachRemaining(System.out::println);

System.out.println("\nChoiceSettings:");
rootNode.path("choiceSettings").fieldNames().forEachRemaining(System.out::println);

您可能需要fields()返回迭代器 > ,以便可以遍历键值对。

 类似资料:
  • 本文向大家介绍从Java字符串中获取所有数字,包括了从Java字符串中获取所有数字的使用技巧和注意事项,需要的朋友参考一下 假设以下是我们的字符串。 为了仅显示上述字符串中的数字,我们使用了该方法并将所有字符替换为空。 以下是最后的示例,该示例仅显示字符串中的数字。 示例 输出结果

  • 问题内容: 我已经看到了关于获取所有可能的子字符串(即相邻字符集)的许多问题,但是对于生成所有可能的字符串(包括其子字符串的组合)都没有疑问。 例如,让: 我希望输出是这样的: 要点是,我们可以删除原始字符串中不相邻的多个字符(以及相邻的字符)。 到目前为止,这是我尝试过的: 但是,这只会从原始字符串中删除相邻字符串的集合,而不会返回上例中的元素。 另一个示例是,如果我们使用字符串,则输出列表应包

  • 问题内容: 我的目标是读取JSON文件并了解所有值的位置,以便在遇到相同JSON时可以轻松读取所有值。我正在寻找一种以Jayway JsonPath 格式返回包含每个数据值的所有路径的列表的方法。 JSON示例: 理想情况下,我想将JSON作为String并执行以下操作: 此代码将打印此内容,这是JSON中所有值的位置: 然后,理想情况下,我将能够获取该列表并解析相同的JSON对象以获取每个值。

  • 问题内容: 我用Java编写代码。 有谁知道我如何以String的形式获取javax.swing.text.html.HTMLDocument的内容?这是我到目前为止所得到的… 我需要HTMLDocument的内容作为字符串。 例: .......等 任何帮助,将不胜感激。我需要使用HTMLDocument类才能正确处理html :) 谢谢丹尼尔 问题答案:

  • 问题内容: 解决方案 :这是我的错误。 正确的方法是 response.body()。string() 而不是 response.body.toString() 我正在使用Jetty servlet,URL是,每次请求此URL都会返回 当在浏览器中键入url时,它会显示出来,不幸的是,当我使用时,它会显示除json字符串以外的其他内存地址。 Okhttp代码Im使用: 有人可以帮忙吗? 问题答案:

  • 问题内容: 我试图解析JSON字符串“ {‘test’:‘100.00’}”并使用GSON库获取值:100.00。我的代码如下所示: 我的结果看起来像这样:“ 100.00”,但是我只需要100.00(不带引号)即可。如何归档? 问题答案: