Android JSON解析不固定key

本文讲述了在遇到Android应用程序接收到的JSON数据中,key不固定的情况。服务器返回了一个JSONObject,其中key是动态变化的,导致解析困难。作者建议首先尝试让服务器修正数据格式,如果无法改变,可以通过调用JSONObject的keys()方法获取key集合,逐个解析JSONObject。通过jsonObject.getJSONObject(keys.next())可以获取每个动态key对应的JSONObject。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这问题不是我遇到了,一个朋友来问我的,原来的数据如下


看到result我的第一反应 what the fuck! 服务器搞什么鬼,好好的JSONArray返回给JSONObject,关键key还不固定

我第一反应回他,让服务器改,看朋友的反映,可能服务器不会改,那我就看看吧。


问题出在我们并不知道JSONObject有多少组数据,也不知道key,我记得以前瞄过JSONObject的部分源码,记得JSONObject是用Map来存储的,那简单map有keySet方法,那就看看JSONObject有没有类似方法,果然找到一个keys();方法源码如下图



有这个方法解析上面的数据还不是洒洒水啦,具体代码如下



jsonObject.getJSONObject(keys.next());拿到的就是下图的JSONObject



剩下的的再不会就回炉学习基础吧  哈哈


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值