简体   繁体   中英

how to read attribute value in json using android

I want to read json attribute value, my json format like this

{"content":{"@attributes" : { "start_limit" : "x","end_limit" : "x","total_records" : "x"},"item":[{"category":"x","distance":"x"}]}},

I want to read total_record's value from json attributes. How can I read ? Please help me

Thanks John Rick

First of all check your JSON String.Change it to

{"content":{"@attributes" : { "start_limit" :"x","end_limit" : "x","total_records" : "x"}},"item":[{"category":"x","distance':"x"}]}} from

{"content":{"@attributes" : { "start_limit" : "x","end_limit" : "x","total_records" : "x"},"item":[{"category":"x","distance":"x"}]}}

In which you left one closing curly brace before "item".

Now below is the code to get value of "total_records"

String jsonString = "{'content':{'@attributes' : { 'start_limit' :'x','end_limit' : 'x','total_records' : 'x'}},'item':[{'category':'x','distance':'x'}]}}";

public String getTotalRecords(String jsonString){
    try {
            JSONObject mainObject = new JSONObject(jsonString);
            JSONObject contentObject = mainObject.getJSONObject("content");
            JSONObject attributesObject = contentObject.getJSONObject("@attributes");
            String totalRecords = attributesObject.getString("total_records");
            Log.i("Total Records", totalRecords);
        } catch (JSONException e) {
            e.printStackTrace();
        }
    return totalRecords;
}

Hope you understand the problem.

Simply use JSONObject .

JSONObject obj = new JSONObject(src);
String totalRecs = obj.getString("total_records");

Not 100% sure it works, but it is a good example where to start.

Hope you've already given it a try before asking in SO. If not, here are a few urls (which I googled): http://www.androidcompetencycenter.com/2009/10/json-parsing-in-android/ and http://about-android.blogspot.com/2010/03/androind-json-parser.html

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM