java - 从 JSON 字符串中检索 null 和非 null 字符串值

标签 java json string null

我有一个正在解析的 JSON 字符串,我想检索字段“pr_num”的值。我收到此错误:

JSONObject["pr_num"] is not a JSONArray.

我的代码如下:

JSONObject obj = new JSONObject(jsonString);

JSONArray data = obj.getJSONArray("pr_num");
JSONObject obj1= data.getJSONObject(0);
System.out.println("JSON CONTENTS ARE"+obj1.getString("pr_num"));

我想获取 pr_num 字段的值,即 690052null

下面提到了 jsonString

[{
    "executed_by": "vishnuc",
    "testplan_id": 17372,
    "pr_num": "690052"
},
{
    "executed_by": "kkavitha",
    "testplan_id": 17372,
    "pr_num": null

}]

最佳答案

你的jsonString是一个json格式的数组 所以首先你必须将其获取到 json 数组(而不是 json 对象)

JSONArray obj = new JSONArray(jsonString);

现在您可以迭代 obj 数组

for(int i=0;i<obj.length();i++){
 System.out.println("content one: " + obj.getJSONObject(i).getString("pr_num"));
}

希望这有帮助。

关于java - 从 JSON 字符串中检索 null 和非 null 字符串值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27991315/

相关文章:

java - 在单独的 Android 线程上调用时,emit 不起作用

json - 使用 text2json 将 TSV 文件转换为 JSON 不返回任何值

javascript - 如何使用 Javascript 中的字符串来验证两个单独的 JSON 字典中的数据?

c++ - 我需要使用具有 C++ 的 add() 和 remove() 函数的字符串创建一个优先级队列

c# - 面向 C# 开发人员的 Java 教程

java - 对 MySQL 的间歇性 java 慢查询

java - Kryonet RMI,无法等待连接更新线程的响应

json - Swift 4 可编码 : the keys are Int array in JSON data

javascript - eval() 是否首先对计算的字符串进行字面翻译?

ios - Swift 1.2 中的 FBRequestConnection 方法