0

How can i extract the json below and save it in an arraylist.

   {
            "trains": {
                "train": [
                    {
                        "@id": 1000000103,
                        "@version": 1,
                        "@status": "active",
                        "@name": "dffffff",
                        "@description": "ffffff half of the nineteenth century.",
                        "@city": "fff",
                        "@phone": "+230 595-1454",
                        "@email": "[email protected]",
                        "@website": "www4u",
                        "@latitude": -5.2882,
                        "@longitude": 3.499,
                        "@defaultLocale": "",
                        "@holes": 48,
                        "@par": 72,
                        "@slope": 0,
                        "@distance": 5.005273,
                        "circuits": {
                            "circuit": []
                        },
                        "localizations": {
                            "localization": []
                        }
                    },
                    {
                        "@id": 1000000105,
                        "@version": 1,
                        "@status": "active",
                        "@name": " xClub",
                        "@description": "",
                        "@city": " xlet",
                        "@phone": "+44465\t",
                        "@email": "",
                        "@website": "wweffl.com",
                        "@latitude": -2.040318,
                        "@longitude": 54548,
                        "@defaultLocale": "",
                        "@holes": 18,
                        "@par": 32,
                        "@slope": 0,
                        "@distance": 2441673,
                        "circuits": {
                            "circuit": []
                        },
                        "localizations": {
                            "localization": []
                        }
                    }
                ]
            }

    }

my working

try {

                jobj_trouve_train = new JSONObject(reponse_trouve_train);

                String jsonobj = jobj_trouve_golf.getString("trains");
                //String jsonobj1 = jobj_trouve_golf.getString("train");

                //jobj_trouve_train = new JSONObject(reponse_trouve_train);

                //jsonArray = jobj_trouve_golf.getJSONArray("trains");
                //jsonArray= new JSONArray(jsonobj);

                //System.out.println("jsonArray "+jsonArray);

            } catch (JSONException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }

5 Answers 5

2

Try this..

try {

                jobj_trouve_train = new JSONObject(reponse_trouve_train);

                JSONObject jsonobj = jobj_trouve_train.getJSONObject("trains");
                JSONArray jsonobj1 = jsonobj.getJSONArray("train");

          for(int i = 0;i< jsonobj1.length();i++){
                JSONObject jsonj = jsonobj1.getJSONObject(i);

                System.out.println("@id "+jsonj.getString("@id"));
                //   Same for remaining all 
                }

            } catch (JSONException e) {
                // TODO Auto-generated catch block                  

                   e.printStackTrace();
        }
Sign up to request clarification or add additional context in comments.

1 Comment

thank you this line JSONArray jsonobj1 = jsonobj.getJSONArray("train"); was the solution aligato
0

You can use the Gson library developed by Google to parse Json into objects. The reference is here: https://code.google.com/p/google-gson/ And, a sample example is here: JSON Parsing with GSON

Comments

0
JSONObject trains = jobj_trouve_train.getJSONObject("trains");
JSONArray trainArray = trains.getJSONArray("train");

JSONObject train1 = trainArray.getJSONObject(0);
...

if i didn't get confuse maybe this one will be right

Comments

0
JSONArray jasonArray = new JSONArray(result.getProperty("trains").toString());

for (int i = 0; i < jasonArray.length(); i++) {

JSONObject jsonObj = jasonArray.optJSONObject(i);
trainObject = new JSONObject(jsonObj.optString("train").toString());
int id = trainObject.optInt("id");

and so on..

}

Comments

0
public Object void toObject(String jsonMsg) throws JSONException {
    JSONObject trains= (JSONObject) new JSONTokener(jsonMsg).nextValue();
    if(trains.has("trains")){
               JSONArray train = (JSONArray) new JSONTokener(object.getString("train")).nextValue();
                for (int t = 0; t < jsonArray.length(); t++) {
                   String temp = jsonArray.getJSONObject(t).toString();
                   JSONObject object = (JSONObject) new JSONTokener(temp).nextValue();
                   if(object.has("@id"))
                      object.getString("@id");
                   // now similar procedure of reading
                   // read values and save it in an "object"
    }       
    return savedObject;
}

-- tested, i have tried to modify code to match your JSON data. complete the rest.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.