Android解析json
来源:互联网 发布:java删除指定文件 编辑:程序博客网 时间:2024/06/03 19:47
复杂的多层嵌套的json数据用gson解析,结构明显易用,但是对于简单的数据,我觉得org.json就够了,比如一层结构的{“resultcode”:”200”,”reason”:”Return Successd!”}和两层{“result”:{“area”:”江苏省苏州市”, “location”:”电信”}这种简单的结构,一层结构和复杂结构的解析方法网上很多,但是我找了很久都没有找到这种两层{}结构的怎么解析,在java中用net.sf.JSONObject就可以了,但是我不知道为什么在Android中不能用这个包,终于自己尝试了出来,代码如下:
这是要解析的json数据:
{ "resultcode":"200", "reason":"Return Successd!", "result":{ "area":"江苏省苏州市", "location":"电信" }}
对应的解析代码
/***jsonstr是我从服务器拿回来的json数据,就是上面的那段数据**/try { JSONObject object = new JSONObject(jsonstr); String picker = object.getString("result"); JSONObject res = new JSONObject(picker); String area =res.getString("area"); String location = res.getString("location"); result.setText("AREA: "+area+ "\nLOCATION: "+ location); } catch (JSONException e) { e.printStackTrace(); }
查阅了jsonobject的api文档后发现了这个:
public JSONObject(String string)throws JSONException
Construct a JSONObject from a source JSON text string.
This is the most commonly used JSONObject constructor.
对于在这个问题苦苦纠结很久的我如获至宝啊!也就是说,我们可以直接从一个json结构的字符串创建一个jsonobject对象,那么它怎么拿到嵌套在里面的那个json数据呢?就好像JSONObject.fromObject()一样,那么我用getString()方法,拿到result这个key,所对应的的value,不就是拿到内层的json数据了吗?我把value的值再给一个字符串,再用上面的方法创建一个新的JSONObject,这样就拿到了内层json数据的东西了!事实证明还是要多看API的!
@limengwe 多谢大哥这两天对我的帮助!
- 【json】android json解析
- Android-Android解析JSON
- Android数据解析:Json解析
- android---Json数据解析
- Android Json 数据解析
- android 解析JSON
- android 解析json数据格式
- android 解析json数据格式
- Android 解析json数据格式
- android 解析json数据格式
- android 解析json数据格式
- Android的JSON解析
- Android 解析Json
- android JSON 解析
- Android 解析json数据格式
- android解析Json
- Android解析json数据
- Android Json解析
- 对本地文件的管理
- 第七届河南省赛 zzuoj 10402: C.机器人 (拓展欧几里得) 好题
- 程序员必读书单
- 单例的封装创建与使用
- Java的泛型程序设计
- Android解析json
- 九章算法面试题78 有效回文串
- centos6.5安装mysql5.7
- CF Good Bye 2015 C. New Year and Domino && D. New Year and Ancient Prophecy (DP)
- 2015菜鸟学飞之旅,2016我要飞得更高
- 九章算法面试题79 寻找峰值
- 【费用流】hdu1533 poj2516 bzoj1070 bzoj1061
- hiho week79 【2-sat】
- Min Stack 实现一个最小栈