Emraan
Emraan

Reputation: 143

Get the count of entries from a json file

I am trying to get json data from a fake api call and need to get the count of the items in it(so that in future I can call the actual restful service). I am not able to get the number of departments in the json. I am expecting the result as 4(int) here.

I am not able to get the string value(json) for the code below:

String json = client.target("file:///C:/Program%20Files%20(x86)/apache-tomcat-8.0.35/webapps/GetProducts.json").request(MediaType.TEXT_PLAIN).get(String.class);

Please find below the entire code:

String json = client.target("file:///C:/Program%20Files%20(x86)/apache-tomcat-8.0.35/webapps/GetProducts.json").request(MediaType.TEXT_PLAIN).get(String.class);

JSONObject jsnobject = new JSONObject(json);

JSONArray jsonArray = jsnobject.getJSONArray("locations");
for (int i = 0; i < jsonArray.length(); i++) {
    JSONObject explrObject = jsonArray.getJSONObject(i);
} 

JSON Sample:

{
"Department":
[
    {"SectionId":"1","SectionName":"Childrens Wear"},
    {"SectionId":"2","SectionName":"Womens Wear"},
    {"SectionId":"3","SectionName":"F&A"},
    {"SectionId":"1","SectionName":"Mens Wear"}
]
}

I am new to java as well as api's.

Thanks,

Upvotes: 0

Views: 1949

Answers (1)

Harshil Sharma
Harshil Sharma

Reputation: 2035

You are either using incorrect key in code or you posted incorrect JSON example. You used locations as the key incode however there is no value against that key in sample JSON. You need to use Department as the key.

JSONArray jsonArray = jsnobject.getJSONArray("Department");

Upvotes: 1

Related Questions