我想问一个关于JSON解析的问题。
现在我得到了这样的回应:
{"resultCode":200,"resultContent":{"orderId":"1268"}}因此,据我所知,这是一个int值和一个带有一个记录的数组。在ma应用程序中,我是这样提取这些值的:
int id = -1;
JSONObject jObject = new JSONObject(json);
int resultCode = jObject.getInt(RESULT_CODE);
if (resultCode!=200) {
return id;
}
JSONArray jArray = jObject.getJSONArray(RESULT_CONTENT);
for (int i = 0; i < jArray.length(); i++) {
JSONObject jArrayObject = jArray.getJSONObject(i);
id = Integer.valueOf(jArrayObject.getString(ORDER_ID));
}
return id;因此,它应该工作,并且id应该有适当的值。
但是,我收到了一个错误/警告,即:
org.json.JSONException:值{"orderId":"1268"}类型为org.json.JSONObject的resultContent不能转换为JSONArray
我的问题是,我在这里做错了什么,如何修复?
发布于 2014-02-19 16:26:29
resultContent不是JSONArray,它只是JSONObject。
作为提示,JSONArrays是可识别的,因为它们有方括号("","")。
发布于 2014-02-19 16:27:24
resultContent是一个对象,而不是数组。将其更改为JSONObject jArray = jObject.getJSONObject(RESULT_CONTENT);
https://stackoverflow.com/questions/21886315
复制相似问题