繁体   English   中英

解析JSONArray时获取NullPointerException

[英]Getting NullPointerException while parsing JSONArray

首次使用JSON。 问题是 -

即使处理了空的json数组,我也得到了空指针异常。 我创建了一个josn文件文件,其中有一个空数组。 我的json文件就像-

{
   "name" :"jsonObject",

   "myArray" : []
}

为了解析,我使用的是json.simple-1.1.1.jar。 我的Java代码是-

JSONParser parser = new JSONParser();
        JSONObject rootObj = (JSONObject) parser.parse(new FileReader(filePath));           

        String str = (String) rootObj.get("name");

        JSONArray array = (JSONArray)rootObj.get("array");

        if(array.isEmpty())
            System.out.println("array is null");

在json文件中,数组有时为null,有时为null。 什么是正确的处理方式?

您成员的名字是myArray不是array 这有效:

JSONArray array = (JSONArray) rootObj.get("myArray");

要检查成员是否在那里,请使用has()

if(rootObj.has("myArray")) {
    JSONArray array = rootObj.getJSONArray("myArray"); // getJSONArray avoids cast :-)
    // ...
}

请参阅: http : //www.json.org/javadoc/org/json/JSONObject.html#has%28java.lang.String%29

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM