我需要获取JsonArray的关键名称,所以JSON看起来像这样,请不要,JSON以数组括号开头,并且里面有对象,我猜是因为后端会有能力添加对象。获取jsonarray键名
[
{
"tehnology": [ ]
},
{
"science": []
}
]
,所以我需要从它的“技术”和“科学”得到的名字,因为JSON可以动态改变,我怎么能实现呢?
我需要获取JsonArray的关键名称,所以JSON看起来像这样,请不要,JSON以数组括号开头,并且里面有对象,我猜是因为后端会有能力添加对象。获取jsonarray键名
[
{
"tehnology": [ ]
},
{
"science": []
}
]
,所以我需要从它的“技术”和“科学”得到的名字,因为JSON可以动态改变,我怎么能实现呢?
JSONArray
包含JSONObject
s。检索每个JSONObject
和使用keys()
访问每个JSONObject
JSONArray jArray = new JSONArray(response);
for (int i = 0; i < jArray.length(); i++) {
JSONObject object = jArray.optJSONObject(i);
Iterator<String> iterator = object.keys();
while(iterator.hasNext()) {
String currentKey = iterator.next();
}
}
定义的键请把正确的JSON字符串你的JSON字符串是不妥当的第一个括号不能是方括号。在线检查json解析网站 – Pankaj
@Clairvoyant第一个括号可以是数组括号,jsonlint.com说我的JSON是有效的。 –
我想你应该检查[this](http://stackoverflow.com/questions/20321212/get-json-array-keys-in-android) – Kunu