当前位置:首页 > 开发 > 移动开发 > 正文

android学习轨迹之四:org.json.JSONException: No value for

发表于: 2015-06-22   作者:hyz301   来源:转载   浏览:
摘要: org.json.JSONException: No value for items  在JSON解析中会遇到一种错误,很常见的错误   06-21 12:19:08.714 2098-2127/com.jikexueyuan.secret I/System.out﹕ Result:{"status":1,"page":1,&

org.json.JSONException: No value for items 

在JSON解析中会遇到一种错误,很常见的错误

 

06-21 12:19:08.714    2098-2127/com.jikexueyuan.secret I/System.out﹕ Result:{"status":1,"page":1,"perpage":20,"timeline":[{"msg":"Haha1","phone_md5":"dasdasdbkas","msgId":"1231234"},{"msg":"Haha8","phone_md5":"dasdasdbkas","msgId":"1231234"}]}
06-21 12:19:08.718    2098-2098/com.jikexueyuan.secret W/System.err﹕ org.json.JSONException: No value for items
06-21 12:19:08.718    2098-2098/com.jikexueyuan.secret W/System.err﹕ at org.json.JSONObject.get(JSONObject.java:355)
06-21 12:19:08.718    2098-2098/com.jikexueyuan.secret W/System.err﹕ at org.json.JSONObject.getJSONArray(JSONObject.java:549)
06-21 12:19:08.722    2098-2098/com.jikexueyuan.secret W/System.err﹕ at com.jikexueyuan.secret.net.Timeline$1.onSuccess(Timeline.java:30)

 错误在:Timeline.java:30

代码为:

JSONArray msgJsonArray = obj.getJSONArray(Config.KEY_TIMELINE);

 KEY_TIMELINE的值为:items

 

但是注意到,JSON中的数组的名为:timeline而我在取值的时候使用的变量名为:items所以出了以上错误。改正方式,统一变量名即可。

附:

  解析方法getString(“ ”)是因为JSON里面不存在这个value,我们可以用另外一个方法optString(“”)这个方法如果不存在value会返回“”空字符串,不会报异常。getStr可以判断是null还是空串 而optStr无法判断

 

android学习轨迹之四:org.json.JSONException: No value for

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
在JSON解析中会遇到一种错误,很常见的错误:org.json.JSONException: No value for thumbnail_pic
org.json.JSONException: No value for thumbnail_pic 在JSON解析中会遇到一种错误,很常见的错误
首先我们先看一些异常: 我们可以很清楚看到 at org.json.JSON.typeMismatch(JSON.java:107) 看到这
在JSON解析中会遇到一种错误,很常见的错误 是因为我们解析方法getString(“ ”)是因为JSON里面不
四、Activity 4.1 Activity Activity是应用程序的入口。负责创建才窗口(setContextView(View)),和
四、Activity 4.1 Activity Activity是应用程序的入口。负责创建才窗口(setContextView(View)),和
四、Activity 4.1 Activity Activity是应用程序的入口。负责创建才窗口(setContextView(View)),和
四、Activity 4.1 Activity Activity是应用程序的入口。负责创建才窗口(setContextView(View)),和
首先创建基于Android2.2 模拟器的Android工程 先完善string.xml 文件 <?xml version="1.0" encod
setXfermode 设置两张图片相交时的模式 我们知道 在正常的情况下,在已有的图像上绘图将会在其上面
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号