gpt4 book ai didi

java - 使用 Jackson 将 Json 数组拆分为单个 Json 元素

转载 作者:搜寻专家 更新时间:2023-11-01 01:25:54 24 4
gpt4 key购买 nike

有没有办法使用 Jackson 库将给定的 Json 数组拆分为单个 Json 元素?例如,我有这个 Json 数组:

[
{
"key1":"value11",
"key2":"value12"
},
{
"key1":"value21",
"key2":"value22"
}
]

拆分后我想要一个单独元素的列表,例如:

{
"key1":"value11",
"key2":"value12"
}

{
"key1":"value21",
"key2":"value22"
}

最佳答案

这个问题的一个很好的解决方案是使用 Java 8 Streaming API:s 简单地进行迭代。 JsonNode对象是 Iterable spliterator在哪里方法可用。因此,可以使用以下代码:

public List<String> split(final String jsonArray) throws IOException {
final JsonNode jsonNode = new ObjectMapper().readTree(jsonArray);
return StreamSupport.stream(jsonNode.spliterator(), false) // Stream
.map(JsonNode::toString) // map to a string
.collect(Collectors.toList()); and collect as a List
}

另一种选择是跳过重新映射(调用 toString )并返回 List<JsonNode>元素代替。这样你就可以使用 JsonNode访问数据的方法(getpath 等等)。

关于java - 使用 Jackson 将 Json 数组拆分为单个 Json 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28473264/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com