What I want:
Get the values of a JSONObject in a csv file.
I guess this question is somewhat near to what i want, but I couldn't get the answer from here.
What I have:
The following json:
{
"day_entries": [
    {
        "project_id": "5198193",
        "project": "14775",
        "user_id": 508343,
        "spent_at": "2016-01-27",
        "task_id": "2892243",
        "task": "Backend Programming",
        "client": "Apple",
        "id": 420923769,
        "notes": "",
        "started_at": "12:00pm",
        "ended_at": "2:00pm",
        "created_at": "2016-01-27T21:30:00Z",
        "updated_at": "2016-01-27T21:30:00Z",
        "hours_without_timer": 2,
        "hours": 2
    }
],
"for_day": "2016-01-27"
}
The code I have written for this is:
  /**
 * Converts the day_entries JSONObject to csv string values and returns as ArrayList
 * @param dayEntries
 * @return null if there is any error parsing TimeSheet JSON response
 */
public static ArrayList<String> writeTimeSheetJSONCDR(JSONArray dayEntries) {
    try {
        ArrayList<String> cdrRows = new ArrayList<String>();
        StringBuilder cdrEntry = new StringBuilder();
        for (int i = 0; i < dayEntries.length(); i++) {
            JSONObject jsonDayEntry = (JSONObject) dayEntries.get(i);
            cdrEntry.append(jsonDayEntry.get("for_day")).append(",");
            cdrEntry.append(jsonDayEntry.get("project_id"));
            cdrEntry.append(",");
            cdrEntry.append(jsonDayEntry.get("project"));
            cdrEntry.append(",");
            cdrEntry.append(jsonDayEntry.get("user_id"));
            cdrEntry.append(",");
            cdrEntry.append(jsonDayEntry.get("spent_at"));
            cdrEntry.append(",");
            cdrEntry.append(jsonDayEntry.get("task_id"));
            cdrEntry.append(",");
            cdrEntry.append(jsonDayEntry.get("task"));
            cdrEntry.append(",");
            cdrEntry.append(jsonDayEntry.get("client"));
            cdrEntry.append(",");
            cdrEntry.append(jsonDayEntry.get("id"));
            cdrEntry.append(",");
            cdrEntry.append(jsonDayEntry.get("notes"));
            cdrEntry.append(",");
            cdrEntry.append(jsonDayEntry.get("started_at"));
            cdrEntry.append(",");
            cdrEntry.append(jsonDayEntry.get("ended_at"));
            cdrEntry.append(",");
            cdrEntry.append(jsonDayEntry.get("created_at"));
            cdrEntry.append(",");
            cdrEntry.append(jsonDayEntry.get("updated_at"));
            cdrEntry.append(",");
            cdrEntry.append(jsonDayEntry.get("hours_without_timer"));
            cdrEntry.append(",");
            cdrEntry.append(jsonDayEntry.get("hours"));
            cdrRows.add(cdrEntry.toString());
        }
        System.out.println("CDREntry: " + cdrEntry.toString());
        return cdrRows;
    } catch (Exception exp) {
        System.err.println("Error parsing json" + exp);
        return null;
    }
}
My Question:
Is there a way to get the subsequent childs as array without specifying the keys individually and I don't have to mention all the keys like I have done?
 
     
     
     
     
    