我从服务器返回 json,如下所示:
[{"id":1,"group":[{"id":1,"subGroup":[{"id":1,"item":"X"}]}]}]
如何获取数组组和子组?
我在 Android 客户端上使用 restlet。
谢谢大家。
我从服务器返回 json,如下所示:
[{"id":1,"group":[{"id":1,"subGroup":[{"id":1,"item":"X"}]}]}]
如何获取数组组和子组?
我在 Android 客户端上使用 restlet。
谢谢大家。
String mResponse = "[{"id":1,"group":[{"id":1,"subGroup":[{"id":1,"item":"X"}]}]}]";
JSONArray responseArrayJson = new JSONArray(mResponse); // This creates a JSON array from your response string.
JSONObject objectJson = responseArrayJson.getJSONObject(0); // gets the one and only JSON object in your array.
JSONArray groupArrayJson = objectJson.getJSONArray("group"); // gets the array indexed by "group".
您也可以重复此模式以获得“子组”。
我解决了这个问题如下:
首先更改服务器的json:
从:
[{"id":1,"group":[{"id":1,"subGroup":[{"id":1,"item":"X"}]}]}]
到
{"array":[{"id":1,"group":[{"id":1,"subGroup":[{"id":1,"item":"X"}]}]}]}
第二个在Android客户端我做这个:
一个获取第一个数组的类,带有 firstArray“数组”的类 ServerModel:
public class ServerModel implements Serializable {
private static final long serialVersionUID = 1L;
private FirstArray[] array;
public ServerModel() {
}
public ServerModel(FirstArray[] array) {
this.array = array;
}
}
第三类具有 secondArray “组”:
public class FirstArray implements Serializable {
private static final long serialVersionUID = 1L;
private SecondArray[] group;
private int id;
public FirstArray() {
}
public FirstArray(int id, SecondArray[] group) {
this.id = id;
this.group = group;
}
}
第四类与thirdArray“subGroup”:
public class SecondArray implements Serializable {
private static final long serialVersionUID = 1L;
private Itens[] subGroup;
private int id;
public SecondArray() {
}
public SecondArray(int id, Itens[] subGroup) {
this.id = id;
this.subGroup = subGroup;
}
}
最后是itens“item”的类
public class Itens implements Serializable {
private static final long serialVersionUID = 1L;
private String item;
private int id;
public Itens() {
}
public Itens(int id, String item) {
this.id = id;
this.item = item;
}
}
谢谢大家的帮助!!!