【问题标题】:Android - Calling getJSONArray throwing JSONException without stacktraceAndroid - 在没有堆栈跟踪的情况下调用 getJSONArray 抛出 JSONException
【发布时间】:2011-02-05 01:32:48
【问题描述】:

我目前正在开发一个从 JSON 提要中提取论坛列表的 Android 应用。我正在尝试解析提要,并在调用 getJSONArray 后立即抛出 JSON 异常,而没有堆栈跟踪。返回的 JSON 存储在 JSONObject jobj 中,格式如下:

{
    "Forum":
        [
         {"ForumName":"CEC Employee Communications Forum","ForumId":"105"},
         {"ForumName":"CEC External Stakeholder Relations Forum","ForumId":"109"},
         {"ForumName":"See All...","ForumId":"0"}
        ]
}

但是,在运行以下代码时,我会立即得到一个没有堆栈跟踪的异常:

JSONArray jarray = new JSONArray();
jarray = jobj.getJSONArray("Forum");

跑步

jobj.GetJSONArray("Forum").toString();

返回格式正确的数组:

[
 {"ForumName":"CEC Employee Communications Forum","ForumId":"105"},
 {"ForumName":"CEC External Stakeholder Relations Forum","ForumId":"109"},
 {"ForumName":"See All...","ForumId":"0"}
]

我也试过

JSONArray jarray = new JSONArray(jobj.GetJSONArray("Forum").toString());

并立即抛出异常。

【问题讨论】:

    标签: android json getjson


    【解决方案1】:

    那么,这样的事情没有帮助吗?我怀疑您是否可以在没有堆栈跟踪的情况下获得异常:

    JSONarray jarray = null;
    try {
       jarray = jobj.getJSONArray("Forum");
    }
    catch(JSONException je) { je.printStackTrace(); }
    

    【讨论】:

    • 我试过了,并在该行上放了一个断点,但它直接跳过它并且在日志中什么也没打印。
    猜你喜欢
    • 1970-01-01
    • 2010-10-31
    • 2014-11-08
    • 2013-12-31
    • 2013-08-03
    • 1970-01-01
    • 2010-11-07
    • 2018-08-20
    • 2010-10-18
    相关资源
    最近更新 更多