我有以下示例 json:
{\"2013-05-30\":{\"available\":\"1\",\"bind\":0,\"info\":\"\",\"notes\":\"\",\"price\":\"\",\"promo\":\"\",\"status\":\"available\"},
\"2013-05-31\":{\"available\":\"1\",\"bind\":0,\"info\":\"\",\"notes\":\"\",\"price\":\"\",\"promo\":\"\",\"status\":\"available\"},
\"2013-06-01\":{\"available\":\"1\",\"bind\":0,\"info\":\"\",\"notes\":\"\",\"price\":\"\",\"promo\":\"\",\"status\":\"available\"}}
我将它读入一个字符串,然后将它解析为一个 JSONObject,但我需要它在一个 JSONArray 中。在将其转换为 JSONArray 之前,我尝试以编程方式在字符串的开头添加“[”并在其末尾添加“]”,尽管它会将其识别为数组,但仍将其视为单个对象(我似乎只有 JSONArray(0))。
这就是我尝试将 jsonData 解析为数组的方式:
try{
jArray = new JSONArray(resultString);
for(int i=0;i<jArray.length();i++){
JSONObject json_data = jArray.getJSONObject(i);
Log.i("log_4","Available: "+json_data.getString("available")+
", Bind: "+json_data.getString("bind")+
", Info: "+json_data.getString("info") +
", Notes: "+json_data.getString("notes") +
", Price: "+json_data.getString("price") +
", Promo: "+json_data.getString("promo") +
", Status: "+json_data.getString("status")
);
}
}catch(JSONException e){
Log.e("log_5", "Error parsing data "+e.toString());
}
这是我不添加 [ 和 ] 的版本,因此将其解析为 JSONObject。
try {
jsonResponse = new JSONObject(resString);
} catch (JSONException e) {
Log.e("log_3", "Error parsing data "+e.toString());
}
如何将每一天(例如“2013-05-30”)分成不同的对象,每个对象都以当天的值作为键?
非常感谢!