【发布时间】:2014-05-08 07:41:26
【问题描述】:
我有以下方法将样本String解析为JSONObject:
private JSONObject test() {
try {
String responseData = "{\"m_tani\":[{\"tani_cd\":\"02\",\"tani_nm\":\"cs\"},{\"tani_cd\":\"03\",\"tani_nm\":\"pc\"}]}";
Log.i("Json", responseData.toString());
JSONObject json = new JSONObject(responseData);
return json;
} catch (Exception e) {
e.printStackTrace();
Log.i("Json", "exception");
}
Log.i("Json", null);
return null;
}
响应数据是:
{"m_tani":[{"tani_cd":"02","tani_nm":"cs"},{"tani_cd":"03","tani_nm":"pc"}]}
当我调试它时,它从JSONObject json = new JSONObject(responseData); 行跳转到return null;,而不是return json; 或catch(Exception e)。
我不知道为什么,请帮我解决这个问题
【问题讨论】:
-
您是否尝试实际打印出结果,看看函数返回什么? Eclipse 调试步骤在多个返回语句上可能会以这种方式运行,但如果您的代码是正确的,那么方法的输出仍然是正确的! @Simulant,也不例外,这个问题已经说清楚了。
-
我试过你的代码,发现工作正常。如果有,请发布更多详细信息。
-
您是否有机会在设备中调试旧代码并且行号不匹配。跳跃通常是由此引起的。
-
我卸载了这个应用程序并重新安装,它工作正常。但是,我还是不知道为什么。
-
在第一行声明
JSONObject并更改最后一行return json;