嗨,以下是格式
的回复object {6}
csdfgi_fgid : 4casdff9743a1-3f9asdf2-4
fesdfgedVsdfgersionsfdg : 7
sdfg : 28
feesdfgdStart : 0
fesdfedCsdfgoudfsgnt : 28
discover[28]
0{4}
DiscCat : Tip
templateCat{2}
name : tip.tp
version : 2
timestamp : 1421146871251
content{1}
我在类中使用Serializable获取这些值,如下所示
@SerializedName("csdfgi_fgid")
public String sCdfsisdfId;
@SerializedName("feedVersion")
public Long lFesdfgedVsdfgfsersdfsion;
@SerializedName("feed")
public ArrayList<DiscoverModel> discover;
现在再次在数组列表中有一个Json对象&#34; templateCat&#34;它有两个参数&#34; name,version&#34;。现在如何从这个JSON对象中获取值
答案 0 :(得分:1)
首先,您需要分配您在POJO类中获得的所有JSONObject。之后从JSONArray(发现)获取JSONObject(templateCat),你必须进行循环。例如:
for(int i=0;i<discover.size();i++){
TemplateCat templateCat = discover.get(i).getTemplateCat();
String strName = templateCat.getName();
String strVersion = templateCat.getVersion();
//If you want to get all name and version as list. Add strName and strVersion to ArrayList. <br>
For Example : nameArray.add(strName);
versionArray.add(strVersion);
}
答案 1 :(得分:0)
您必须首先获取该JSON数组,通过它进行迭代,然后使用Gson将其转换为您想要的对象。
JSONObject rootJson = /* Get your JSON object here */;
JSONArray nestedArray = rootJson.getJsonArray("your_nested_json_array_name");
List<YourObject> objects;
for(int i = 0; i < nestedArray.size(); i++) {
String objectJsonString = nestedArray.get(i);
YourObject o = new Gson().fromJson(objectJsonString, YourObject.class);
objects.add(o);
}
..您需要做的最后一件事就是将我们的objects
列表设置为您想要的实例。