java动态获取json数据中的key 和 value
时间: 2024-04-15 19:29:59 浏览: 211
您可以使用Java中的JSON库来解析JSON数据并动态获取其键(key)和值(value以下是使用Jackson库的示例代码:
```java
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
public class JsonParser {
public static void main(String[] args) {
String json = "{\"name\":\"John\", \"age\":30, \"city\":\"New York\"}";
try {
ObjectMapper objectMapper = new ObjectMapper();
JsonNode rootNode = objectMapper.readTree(json);
// 遍历所有键值对
for (JsonNode entry : rootNode) {
String key = entry.fieldNames().next();
String value = entry.get(key).asText();
System.out.println("Key: " + key + ", Value: " + value);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
在上面的示例中,我们使用Jackson库来解析JSON字符串。首先,我们创建一个ObjectMapper对象,并使用它的`readTree`方法将JSON字符串转换为JsonNode对象。
然后,我们可以遍历JsonNode对象中的键值对。通过调用`fieldNames`方法获取键的迭代器,并使用`next`方法获取键的名称。然后,我们可以通过键获取对应的值,并使用`asText`方法将其转换为字符串。
最后,我们打印出每个键值对的键和值。
请注意,这只是使用Jackson库的一种方法,还有其他的JSON库可以完成相同的任务,例如Gson和JSON.simple。您可以根据自己的喜好选择适合您需求的库。
阅读全文