解析json不规则数据
2017-05-08 本文已影响0人
tiger桂
移动项目中数据和服务器的交互,大多数是通过json数据格式(通过键值对的方式),正常流程是客户端和服务器谢定了key,然后通过此key去获取相对应的value值,但是有时间有这样的一个需求,服务器获取到的key和value客户端都是为止,且都需要客户端解析,展示在页面。
例如:
String jsonData = {"zhongtong":"中通","suer":"速尔","bjemstckj":"北京EMS","yuantong":"圆通","ztky":"中铁物流","quanfengkuaidi":"全峰","youshuwuliu":"优速","shentong":"申通","zhaijisong":"宅急送","zhongtiewuliu":"中铁快运","ems":"EMS","shunfeng":"顺丰","guotongkuaidi":"国通","jd":"京东","zengyisudi":"增益","huitongkuaidi":"汇通","tiantian":"天天","yunda":"韵达","ganzhongnengda":"能达","debangwuliu":"德邦","youzhengguonei":"包裹\/平邮"}
这段数据格式,从正常的解析流程来上说,我们必须都得知道所以的key才能一步步解析出来,所以此时无法正常解析出来。
解决办法:
JSONObject jsonObect = new JSONObject(jsonData);
//得到该段json数据的所有的keys
Iterator keys = jsonby.keys();
通过迭代key得到具体的values值,将每个key和value存入一个对象,然后放入一个列表即可。