I am trying to loop over the following JSON
{ "dataArray": [{ "A": "a", "B": "b", "C": "c" }, { "A": "a1", "B": "b2", "C": "c3" }] }
What i got so far:
JSONObject jsonObj = new JSONObject(json.get("msg").toString()); for (int i = 0; i < jsonObj.length(); i++) { JSONObject c = jsonObj.getJSONObject("dataArray"); String A = c.getString("A"); String B = c.getString("B"); String C = c.getString("C"); }
Any ideas?
1) Create a Maven project and add json dependency in POM. xml file. 2) Create a string of JSON data which we convert into JSON object to manipulate its data. 3) After that, we get the JSON Array from the JSON Object using getJSONArray() method and store it into a variable of type JSONArray.
Parsing JSON Data in JavaScript In JavaScript, you can easily parse JSON data received from the web server using the JSON. parse() method. This method parses a JSON string and constructs the JavaScript value or object described by the string. If the given string is not valid JSON, you will get a syntax error.
String value = (String) jsonObject. get("key_name"); Just like other element retrieve the json array using the get() method into the JSONArray object.
In your code the element dataArray
is an array of JSON objects, not a JSON object itself. The elements A
, B
, and C
are part of the JSON objects inside the dataArray
JSON array.
You need to iterate over the array
public static void main(String[] args) throws Exception { String jsonStr = "{ \"dataArray\": [{ \"A\": \"a\", \"B\": \"b\", \"C\": \"c\" }, { \"A\": \"a1\", \"B\": \"b2\", \"C\": \"c3\" }] }"; JSONObject jsonObj = new JSONObject(jsonStr); JSONArray c = jsonObj.getJSONArray("dataArray"); for (int i = 0 ; i < c.length(); i++) { JSONObject obj = c.getJSONObject(i); String A = obj.getString("A"); String B = obj.getString("B"); String C = obj.getString("C"); System.out.println(A + " " + B + " " + C); } }
prints
a b c a1 b2 c3
I don't know where msg
is coming from in your code snippet.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With