org.json.JSONArray类型的值为0的值[]无法转换为JSONObject

时间:2019-06-16 04:30:30

标签: java php android json

我有此代码:

    JSONObject DATA = makeHttpRequest("http://link....", "POST", httpParams);
            JSONArray jsonTypeArray, jsonDataArray;

            boolean POST_PARAMETERS_ERROR_FLAG_RESULT, DATA_ERROR_FLAG_RESULT;

            POST_PARAMETERS_ERROR_FLAG_RESULT = DATA.getBoolean("post_parameters_error_flag");

            if (!POST_PARAMETERS_ERROR_FLAG_RESULT) {
                DATA_ERROR_FLAG_RESULT = DATA.getBoolean("data_error_flag");

                if (!DATA_ERROR_FLAG_RESULT) {
                    jsonTypeArray = DATA.getJSONArray("type");
                    jsonDataArray = DATA.getJSONArray("data");

                    JSONObject typeContent, dataContent;

                    typeContent = jsonTypeArray.getJSONObject(0);
                    dataContent = jsonDataArray.getJSONObject(0);

                    if (typeContent.has("value")) {
                        DATA_TYPE.add(typeContent.getString("value"));
                        DATA_TITLE.add(dataContent.getString("value1"));
                        DATA_ID.add(dataContent.getString("value2"));
                        DATA_EXTRA.add(dataContent.getString("value3"));
                        DATA_NOTE.add(typeContent.getString("value4"));
                        DATA_STATUS.add(dataContent.getString("value5"));
                    }

..........

这是从PHP页面获得的JSON响应:

{
    "post_parameters_error_flag": false,
    "data_error_flag": false,
    "message": "Operazione completata.",
    "type":[
          {
              "value": "..."
          }
     ],
    "data": [
        {
            "value1": "...",
            "value2": "...",
            "value3": "...",
            "value4": "...",
            "value5": "..."
        }
     ]
}

但是我看不到值,logcat这样说:

W / System.err:org.json.JSONException:org.json.JSONArray类型的值为0的值[]无法转换为JSONObject

我正在进行另一项活动,其代码如下所示,并且可以正常工作,我在哪里做错了?

0 个答案:

没有答案