【发布时间】:2013-02-25 08:14:17
【问题描述】:
我对 Android 比较陌生,我正在尝试解析一些数据,但我似乎在 LogCat 中收到以下错误:
Unexpected value from nativeGetEnabledTags: 0
Error parsing data org.json.JSONException
我的 JSON 数据来自: http://api.wunderground.com/api/180dde448747af27/forecast/q/UK/Bradford.json
我正在使用以下代码提取数据:
JSONArray forecasts = json.getJSONArray("forecast");
for (int i=0;i<forecasts.length();i++) {
HashMap<String, String> map = new HashMap<String, String>();
JSONObject e = forecasts.getJSONObject(i);
// simpleforecast is a json array
JSONArray forecastday = json.getJSONArray("forecastday");
JSONObject fd = forecastday.getJSONObject(i);
String icon = fd.getString("icon");
map.put("id", String.valueOf(i));
map.put("icon", icon);
mylist.add(map);
}
我相信这个错误与我的 JSON 拉取有关,我可能没有正确解析它,但我似乎找不到正确的方法来解决它。这段代码被一个 try-catch 包围,然后我有一个列表适配器,我将代码添加到。
如果我遗漏了任何内容,我深表歉意,但我相信这已经足够了,因为我相信这就是错误的来源。
【问题讨论】:
-
如果你没有捕捉到异常,LogCat 中应该会显示一个行号,然后你就知道是哪个语句导致了它,那么你应该缩小搜索范围。
-
forecast不是数组,请改用getJSONObject。