[英]Parsing a JSONArray inside a keyless JSONArray using Gson
我最近才刚开始进行android开发,并且想出了一个看起来像这样的json,
"rows": [
[
{ "val": "abc",
"val1":"cde"
},
{ "val": "efg",
"val1":"hij"
},
],
[
{ "val": "klm",
"val1":"nop"
},
{ "val": "qrs",
"val1":"tuv"
},
],
........
........
........
]
现在您可以看到外部数组没有键,而内部数组有。 我正在使用Gson
解析json。 我应该如何为这个json创建模型类? 任何帮助,将不胜感激!!
首先,此JSON字符串看起来无效。 每个包含两个元素的内部数组的第二个元素后不应有逗号。 并将整个内容包装在{}中。 像这样:
{"rows": [
[
{ "val": "abc",
"val1":"cde"
},
{ "val": "efg",
"val1":"hij"
}
],
[
{ "val": "klm",
"val1":"nop"
},
{ "val": "qrs",
"val1":"tuv"
}
]
]}
如果您更正了这些问题,则可以使用GSON进行解析,如下所示:
JsonElement root = new JsonParser().parse(jstring);
root.getAsJsonObject().get("rows")
.getAsJsonArray().forEach(innerArray -> {
innerArray.getAsJsonArray().forEach(element -> {
System.out.println("val equals "+element.getAsJsonObject().get("val"));
System.out.println("val1 equals "+element.getAsJsonObject().get("val1"));
});
});
显然,除了打印之外,您还可以使用这些解析后的值进行任何操作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.