开发者

JSON Traversing to element using Json webservices in android

I am taking result of a json webservice in JSONObject. While printing this jsonObject it is printing exact result. I got problem at the time of fetching values in this result because i am reading a complex response that is in the form of

{"FoodMenuRS"
:{"Status":"Success",
 "TotalResults":2,
"Results":{"Items":
{"Item":[
{"@Id":"6","@Name":"Tea"},
{"@Id":"4","@Name":"Coffee"}
]}}}}

Here i am reading through,

JSONArray jsonArray = json.getJSONArray("Item");

Here i am getting error "No Value for It开发者_如何学Cem"

Where as i got fetched value while calling another service which is simple in format,

{"earthquakes":
[{"eqid":"c0001xgp","magnitude":8.8,"lng":142.369,"src":"us","datetime":"2011-03-11 04:46:23","depth":24.4,"lat":38.322},
{"eqid":"2010xkbv","magnitude":7.5,"lng":91.9379,"src":"us","datetime":"2010-06-12 17:26:50","depth":35,"lat":7.7477}]}

I called it using,

JSONArray  earthquakes = json.getJSONArray("earthquakes");

Please help how to fetch this type of Json response. Thanks in advance.


ya it is very complex but i refer you to use Gson library to parse Json as it is parse in structural manner example


check this:

http://www.androidcompetencycenter.com/2009/10/json-parsing-in-android/


Done with

    JSONObject menuObject = jObject.getJSONObject("menu");
    String attributeValue = menuObject.getString("value");


        private String jString = "{\"menu\": {\"id\": \"file\", \"value\": \"File\", \"popup\": { \"menuitem\": [ {\"value\": \"New\",   \"onclick\": \"CreateNewDoc()\"}, {\"value\": \"Open\", \"onclick\": \"OpenDoc()\"}, {\"value\": \"Close\", \"onclick\": \"CloseDoc()\"}]}}}";

        JSONObject menuObject = jObject.getJSONObject("menu");
        String attributeId = menuObject.getString("id");
        String attributeValue = menuObject.getString("value");
        JSONObject popupObject = menuObject.getJSONObject("popup");
        JSONArray menuitemArray = popupObject.getJSONArray("menuitem");

With every new curley braces call getJSONObjectand for child call getString.

Or you can follow Gson concept to fetch response.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜