Iterer JSON Array Java

Iterer JSON Array Java

For å lese og skrive JSON-data i Java bruker vi org.json bibliotek. De org.json biblioteket lar oss kode og dekode JSON-data i Java. De org.json klasse gir flere viktige klasser der vi kan utføre flere operasjoner på de JSON-dataene. Disse klassene er som følger:

  1. JSONObject
  2. JSON-verdi
  3. JSONArray
  4. JSONNumber
  5. JSONString

Dette er følgende trinn for å iterere JSON-array i Java:

1) Lag en Maven prosjekt og legg til json avhengighet i POM.xml fil.

 org.json json 20160810  

Iterer JSON Array Java

2) Lag en streng med JSON-data som vi konverterer til JSON-objekt for å manipulere dataene.

3) Etter det får vi JSON Array fra JSON Object ved hjelp av getJSONArray() metode og lagre den i en variabel av typen JSONArray.

4) Den getJSONArray() metoden tar matrisenavnet som en streng for å hente fra objektet.

5) Vi bruker deretter en for-løkke fra 0 til JSONArray.length(). Lengde()-metoden returnerer størrelsen på matrisen.

6) Vi lagrer hver indekspost i et JSONObject. For å få JSON-objektet til en bestemt indeks bruker vi getJSONObject()-metoden til JSONArray.

7) For å få en verdi av et spesifisert felt bruker vi get()-metoden til JSONObject ved å sende feltnavnet som en streng i get()-metoden.

JSONExample.java

 // import required packages package javaTpoint.JSONExample; //import required classes import org.json.JSONArray; import org.json.JSONObject; // create JSONExample class to iterate JSON Array public class JSONExample{ //main() method start public static void main(String args[]){ // create an string of JSON data String jsonData = &apos;{&apos;locations&apos;:[{&apos;lat&apos;:&apos;23.053&apos;,&apos;long&apos;:&apos;72.629&apos;,&apos;location&apos;:&apos;ABC&apos;,&apos;address&apos;:&apos;DEF&apos;,&apos;city&apos;:&apos;Ahmedabad&apos;,&apos;state&apos;:&apos;Gujrat&apos;,&apos;phonenumber&apos;:&apos;1234567&apos;},{&apos;lat&apos;:&apos;21.013&apos;,&apos;long&apos;:&apos;52.619&apos;,&apos;location&apos;:&apos;XYZ&apos;,&apos;address&apos;:&apos;MNP&apos;,&apos;city&apos;:&apos;Ghaziabad&apos;,&apos;state&apos;:&apos;UP&apos;,&apos;phonenumber&apos;:&apos;212321&apos;}]}&apos;; // convert JSON string into JSON Object using JSONObject() method JSONObject json = new JSONObject(jsonData); // get locations array from the JSON Object and store it into JSONArray JSONArray jsonArray = json.getJSONArray(&apos;locations&apos;); // Iterate jsonArray using for loop for (int i = 0; i <jsonarray.length(); i++) { store each object in jsonobject explrobject="jsonArray.getJSONObject(i);" get field value from using get() method system.out.println(explrobject.get('address')); } < pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/java-tutorial/10/iterate-json-array-java-2.webp" alt="Iterate JSON Array Java"> <p> <strong>JSONExample2.java</strong> </p> <pre> //import package package javaTpoint.JSONExample; // import require classes import java.io.FileWriter; import java.io.IOException; import org.json.simple.JSONArray; import org.json.simple.JSONObject; // create class JSONExample1 public class JSONExample1 { // main() method start public static void main(String[] args) { // create instance of JSONObject JSONObject jsonObject = new JSONObject(); // use put() method for inserting the data into JSON object jsonObject.put(&apos;name&apos;, &apos;Abhishek Sharma&apos;); jsonObject.put(&apos;department&apos;,&apos;B.E&apos;); jsonObject.put(&apos;branch&apos;, &apos;C.S.E&apos;); jsonObject.put(&apos;year&apos;, 3); //create JSON Array and store record into JSONObject JSONArray list1 = new JSONArray(); list1.add(&apos;Julia&apos;); list1.add(&apos;Paul&apos;); list1.add(&apos;Emma&apos;); jsonObject.put(&apos;Names&apos;, list1); JSONArray list2 = new JSONArray(); list2.add(&apos;BCA&apos;); list2.add(&apos;B.Tech&apos;); list2.add(&apos;MCA&apos;); jsonObject.put(&apos;Course&apos;, list2); JSONArray list3 = new JSONArray(); list3.add(&apos;3&apos;); list3.add(&apos;4&apos;); list3.add(&apos;2&apos;); jsonObject.put(&apos;Year&apos;, list3); // create instance of the FileWriter class by passing the path of the file in the constructor try (FileWriter file = new FileWriter(&apos;D:\newfile.json&apos;)) { // use write() method to add JSONObject into file file.write(jsonObject.toJSONString()); file.flush(); } catch (IOException e) { e.printStackTrace(); } // get locations array from the JSON Object and store it into JSONArray JSONArray jsonArray = (JSONArray) jsonObject.get(&apos;Names&apos;); // Iterate jsonArray using for loop for (int i = 0; i <jsonarray.size(); i++) { get field value from json array system.out.println(jsonarray.get(i)); } < pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/java-tutorial/10/iterate-json-array-java-3.webp" alt="Iterate JSON Array Java"> <hr></jsonarray.size();></pre></jsonarray.length();>