public void stateToStorage(State completeState, String fileName) { clearFile(fileName); JSONArray arrCompleted = new JSONArray(); JSONArray arrIncompleted = new JSONArray(); JSONArray arrUndetermined = new JSONArray(); JSONArray arrReserved = new JSONArray(); for (Event e : completeState.completedEvents) { JSONObject object = new JSONObject(); object = castEventToJSONObj(e); arrCompleted.put(object); } for (Event e : completeState.incompletedEvents) { JSONObject object = new JSONObject(); object = castEventToJSONObj(e); arrIncompleted.put(object); } for (ReservedEvent e : completeState.undeterminedEvents) { JSONObject object = new JSONObject(); object = castFloatingEventToJSONObj(e); arrUndetermined.put(object); } for (ReservedEvent e : completeState.reservedEvents) { JSONObject object = new JSONObject(); object = castReservedEventToJSONObj(e); arrReserved.put(object); } JSONObject o = new JSONObject(); try { o.put("completed", arrCompleted); o.put("incompleted", arrIncompleted); o.put("undetermined", arrUndetermined); o.put("reserved", arrReserved); } catch (JSONException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } try { FileWriter fw = new FileWriter(fileName, true); PrintWriter pw = new PrintWriter(fw); pw.println(o.toString()); pw.close(); } catch (IOException ex) { ex.printStackTrace(); } }