我有一个JsonNode像下面
"{"Pink":["#000000"],"Red":["#000000"],"Blue":["#000000"],"Orange":["#000000"]}"
,我正在尝试获取粉红色的值,例如如下
jsonNode.get("Pink").asText()
但这是不工作-是否有另一种方式,我可以通过Java访问这些值?
看来你的问题是"Pink"是一个数组而不是字符串。这里的解决方案是要么删除方括号,或者如果不可能,下面应该给您预期的结果:
jsonNode.get("Pink").get(0).asText()
这个方法将帮助您遍历JsonNode
public void getColorCode() throws JsonProcessingException {
String color = "{"Pink":["#000000"],"Red":["#000000"],"Blue":["#000000"],"Orange":["#000000"]}";
ObjectMapper mapper = new ObjectMapper();
JsonNode node = mapper.readTree(color);
for (JsonNode colorCode : node.get("Pink")){
System.out.println(colorCode);
}
}