gpt4 book ai didi

java - 解析 JSONArray 时出现 NullPointerException

转载 作者:太空宇宙 更新时间:2023-11-04 06:51:37 25 4
gpt4 key购买 nike

第一次使用 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 文件中,数组有时为空,有时不为空。正确的处理方法是什么?

最佳答案

您的成员名称是 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

关于java - 解析 JSONArray 时出现 NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23244135/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com