sftdev sftdev - 1 year ago 2798
JSON Question

Android- create JSON Array and JSON Object

How can I create a JSON with this format in Android:
Since the API that I will be passing will parse JsonArray then the object.
Or would it be okay if just to pass a json object? Since I will just have to insert 1 transaction per service call.

"student": [

"id": 1,
"name": "John Doe",
"year": "1st",
"curriculum": "Arts",
"birthday": 3/3/1995

"id": 2,
"name": "Michael West",
"year": "2nd",
"curriculum": "Economic",
"birthday": 4/4/1994

What I know is only the JSONObject.
Like this one.

JSONObject obj = new JSONObject();
try {
obj.put("id", "3");
obj.put("name", "NAME OF STUDENT");
obj.put("year", "3rd");
obj.put("curriculum", "Arts");
obj.put("birthday", "5/5/1993");

} catch (JSONException e) {
// TODO Auto-generated catch block

Any ideas. Thanks

Answer Source

Use the following code:

JSONObject student1 = new JSONObject();
try {
    student1.put("id", "3");
    student1.put("name", "NAME OF STUDENT");
    student1.put("year", "3rd");
    student1.put("curriculum", "Arts");
    student1.put("birthday", "5/5/1993");

} catch (JSONException e) {
    // TODO Auto-generated catch block

JSONObject student2 = new JSONObject();
try {
    student2.put("id", "2");
    student2.put("name", "NAME OF STUDENT2");
    student2.put("year", "4rd");
    student2.put("curriculum", "scicence");
    student2.put("birthday", "5/5/1993");

} catch (JSONException e) {
    // TODO Auto-generated catch block

JSONArray jsonArray = new JSONArray();


JSONObject studentsObj = new JSONObject();
    studentsObj.put("Students", jsonArray);

String jsonStr = studentsObj.toString();

    System.out.println("jsonString: "+jsonStr);
Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download