解析JSON,数组中的数组(Android)

解析JSON,数组中的数组(Android),第1张

概述我正在尝试解析来自http://www.worldweatheronline.comJSONFeed的天气信息.这是它的格式:{"data":{"current_condition":[{"cloudcover":"75","humidity":"100","observation_time":&

我正在尝试解析来自http://www.worldweatheronline.com JsON Feed的天气信息.这是它的格式:

{ "data" : { "current_condition" : [ { "cloudcover" : "75",        "humIDity" : "100",        "observation_time" : "10:01 PM",        "precipMM" : "0.0",        "pressure" : "1015",        "temp_C" : "3",        "temp_F" : "37",        "visibility" : "4",        "weatherCode" : "143",        "weatherDesc" : [ { "value" : "Mist" } ],        "weatherIconUrl" : [ { "value" : "http://www.worlDWeatheronline.com/images/wsymbols01_png_64/wsymbol_0006_mist.png" } ],        "winddir16Point" : "N",        "winddirDegree" : "360",        "windspeedKmph" : "11",        "windspeedMiles" : "7"      } ],

所以有current_condition JsONArray,我已经设法从中获取值.但是,我如何从内部数组weatherDesc或weatherIconUrl读取值?

这是我的读取degraMM,压力,temp_C等的代码:

String precipMM = null;    try {        JsONObject data = Json.getJsONObject("data");        JsONArray current_condition = data.getJsONArray("current_condition");        for(int i = 0; i < current_condition.length(); i++) {            precipMM = current_condition.getJsONObject(i).getString("precipMM");        }    } catch (JsONException e) {        e.printstacktrace();    }

解决方法:

这很简单

current_condition.getJsONArray()

和Json解析一样,我建议看一下这个库
http://jackson.codehaus.org/

编辑后你发表评论

您发布的代码可能会得到很大改善.您正在为每个值迭代数组.你可以对数组做同样的事情.只需调用.getJsonArray(),而不是.getJsonObject().但是,这意味着您的代码会为每个其他值抛出错误.我会再次推荐杰克逊图书馆

总结

以上是内存溢出为你收集整理的解析JSON,数组中的数组(Android)全部内容,希望文章能够帮你解决解析JSON,数组中的数组(Android)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1106387.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存