gpt4 book ai didi

android - 不使用数组名解析 JSON

转载 作者:行者123 更新时间:2023-11-30 02:03:23 26 4
gpt4 key购买 nike

我正在使用 GSON 进行解析。我可以使用 arrayName 解析 json,但我不想使用 arrayName,因为它不是静态的。arrayName 可以更改,并且将从服务器添加更多。请提出建议。

JSON:

{
"cityCode": "",
"list": {
"one": [
{
"adults": 2
},
{
"adults": 2
},
{
"adults": 2
}
],
"three": [
{
"adults": 2
},
{
"adults": 2
},
{
"adults": 2
},
{
"adults": 2
},
{
"adults": 2
}
]
}
}

最佳答案

这适用于您的情况。请记住,JSONObject 具有列出其所有属性的 keys() 方法。您可以看到,迭代器结果是无序的,运行这段代码并查看结果。

static void parseJson(String json){
try{
JSONObject object = new JSONObject(json);

//Get "list" JSONObject
JSONObject obj = object.getJSONObject("list");
//Try to get all attributes of that object
@SuppressWarnings("unchecked")
Iterator<String> iterator = obj.keys();
while (iterator.hasNext()) {
String key = iterator.next();
JSONArray arr = obj.getJSONArray(key);
int size = arr.length();
for(int i = 0; i < size; i++){
JSONObject o = arr.getJSONObject(i);
Log.e("JSON", "=> "+o.getInt("adults"));
}
}
}catch(JSONException e){
e.printStackTrace();
}
}

关于android - 不使用数组名解析 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31154735/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com