我目前正在尝试在我的代码中解析JSON数组,但问题是它永远不会进入try块。
这是我的代码:
protected Void doInBackground(Void... arg0) {
JsonParser jsonParser = new JsonParser();
String json = jsonParser.getJSONFromUrl("http://hills.ccsf.edu/~jpark41/ViB/sample.json");
if(json != null) {
Log.i("JSON: ", "NOT NULL"); // This log executes!!
try
{
Log.i("we: ", " out here"); // This does not!!
JSONObject jObj = new JSONObject(json);
JSONArray jsar = new JSONArray(json);
Iterator<String> iter = jObj.keys();
while (iter.hasNext()) {
String key = iter.next();
try {
JSONObject value = (JSONObject)jObj.get(key);
id = value.getString("id");
thumb = value.getString("thumb");
media = value.getString("media");
title = value.getString("title");
} catch (JSONException e) {
// Something went wrong!
}
now_playing = id;
earned = title;
}
} catch (JSONException e) {
Log.i("we NOT: ", " out here");
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return null;
}
&#34;我们在这里&#34;永远不会记录,只是&#34;我们不在这里&#34;。为什么try块永远不会执行?我没有太多使用android解析JSON的经验,所以我确定我只是遗漏了一些东西。谢谢你的帮助。
答案 0 :(得分:0)
当我注释掉JSONObject jObj = new JSONObject(json);并换出迭代器以获得基本的for循环。感谢大家的帮助。