Разобрать несколько объектов с помощью GSON - PullRequest
2 голосов
/ 29 декабря 2011

На данный момент я могу правильно проанализировать JSON следующим образом:

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

с GSON. Но я не знаю подходящий способ для анализа нескольких объектов, таких как:

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

У меня правильно настроен Javabean.

Ответы [ 2 ]

3 голосов
/ 29 декабря 2011
{
"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);

Доступ: mObjectclass.getAssignments.get (0) .getId ();

3 голосов
/ 29 декабря 2011

Вы можете использовать метод ниже:

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");
}

Надеюсь, это поможет вам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...