MaikelS
MaikelS

Reputation: 1299

Parse multiple objects with GSON

At the the moment i can correctly parse a JSON like this:

"assignments:[{"
    + "'id': '111',"
    + "'erporder_erpid' : '132',"
    + "'dtStart' : '10:00 12-12-12',"
+ "}]"; 

with GSON. But I don't know the appropriate way to parse multiple objects like:

"assignments:[{"
    + "'id': '111',"
    + "'erporder_erpid' : '132',"
    + "'dtStart' : '10:00 12-12-12',"
+ "},"
+ "{"
    + "'id': '111',"
    + "'erporder_erpid' : '132',"
    + "'dtStart' : '10:00 12-12-12',"
+ "}]"

I have a correctly set up Javabean.

Upvotes: 2

Views: 4147

Answers (2)

{
"assignments:[{"
        + "'id': '111',"
        + "'erporder_erpid' : '132',"
        + "'dtStart' : '10:00 12-12-12',"
    + "},"
    + "{"
        + "'id': '111',"
        + "'erporder_erpid' : '132',"
        + "'dtStart' : '10:00 12-12-12',"
    + "}]"
}

Objectclass.java

public class takeData {
public List<assignmentsData> assignments;


    public List<assignmentsData> getAssignments() {
        return assignments;
    }

    public void setAssignments(List<assignmentsData> assignments) {
        this.assignments = assignments;
    }
}

assignmentsData.java

public class assignmentsData {
    public String id="";
    public String erporder_erpid="";
    public String dtStart="";


    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getErporder_erpid() {
        return erporder_erpid;
    }

    public void setErporder_erpid(String erporder_erpid) {
        this.erporder_erpid = erporder_erpid;
    }

    public String getDtStart() {
        return dtStart;
    }

    public void setDtStart(String dtStart) {
        this.dtStart = dtStart;
    }
}

parsingClass.java

Gson mGson= new Gson();
Objectclass mObjectclass=gson.fromJson(jsonString, Objectclass.class);

Access :mObjectclass.getAssignments.get(0).getId();

Upvotes: 3

nisha.113a5
nisha.113a5

Reputation: 2024

You can use below method :

JSONArray outerArr = new JSONArray("assignments"); 
for(int ictr=0;ictr<outerArr.length;ictr++)
{
        JSONObject obj =outerArr.getJSONObject(ictr);
        String id=obj.getString("id");
        String erporder_erpid=obj.getString("erporder_erpid");
        String dtStart=obj.getString("dtStart");
}

Hope this may help to you.

Upvotes: 3

Related Questions