如何使用 Java 中的 Jackson API 将 JsonNode 转换为 ArrayNode?


JsonNode 是所有 JSON 节点的基类,构成 JSON 树模型,而ArrayNode 是表示从 JSON 内容映射的数组的节点类。我们可以通过类型转换 ArrayNode 来将 JsonNode 转换为 ArrayNode,使用 **ObjectMapper 类的 readTree() 方法检索值,使用 get() 方法访问数组节点的指定元素的值。

语法

public JsonNode readTree(String content) throws IOException, com.fasterxml.jackson.core.JsonProcessingException

示例

import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.node.ArrayNode;
import com.fasterxml.jackson.core.JsonProcessingException;
public class JSonNodeToArrayNodeTest {
   public static void main(String args[]) throws JsonProcessingException {
      String jsonStr = "{\"Technologies\" : [\"Java\", \"Scala\", \"Python\"]}";
      ObjectMapper mapper = new ObjectMapper();
      ArrayNode arrayNode = (ArrayNode) mapper.readTree(jsonStr).get("Technologies");
      if(arrayNode.isArray()) {
         for(JsonNode jsonNode : arrayNode) {
            System.out.println(jsonNode);
         }
      }
   }
}

输出

"Java"
"Scala"
"Python"

更新于: 09-Jul-2020

15K+ 浏览

开启你的 职业生涯

完成课程获得认证

开始吧
广告