用JAVA解析json文件

用JAVA解析json文件,java,android,json,Java,Android,Json,我有一个json文件。现在,字段名“refs”在每个数组中都不可用。那么,解析这类字段的过程是什么呢。因为,当我试图解析json文件时,第一个数组没有“refs”字段,而第二个数组没有。这就是它抛出空指针异常的原因。我用这个密码试过了 JSONArray jsonArray = new JSONArray(tokener); for (int index = 0; index < jsonArray.length(); index++) { JSONObject js

我有一个json文件。现在,字段名
“refs”
在每个数组中都不可用。那么,解析这类字段的过程是什么呢。因为,当我试图解析json文件时,第一个数组没有
“refs”
字段,而第二个数组没有。这就是它抛出空指针异常的原因。我用这个密码试过了

 JSONArray jsonArray = new JSONArray(tokener);

 for (int index = 0; index < jsonArray.length(); index++) {

       JSONObject jsonObject = jsonArray.getJSONObject(index);

          if(!jsonObject.getString("refs").equalsIgnoreCase(null)){
                String refs = jsonObject.getString("refs");
                    }
        }
JSONArray-JSONArray=新的JSONArray(令牌);
for(int index=0;index

但是,它不起作用。处理这种情况的方法是什么?解决这个问题的方法是什么。谢谢。

如果您不确定钥匙是否存在,请先打电话检查。

问题出在您的If语句中

if(!jsonObject.getString("refs").equalsIgnoreCase(null)){
你应该写的是:

if(!jsonObject.has("refs")){
希望这有帮助

试试这个

if(jsonObject.has("refs")){

  refs = jsonObject.getString("refs");
}

你可以这样替换“如果”条件,它对我有效,希望对你也有用

if(jObj.optString("refs") != null)

尝试本教程,并按照每个步骤进行操作,您可以给出json响应。