Iteruj tablicę JSON w Javie

Iteruj tablicę JSON w Javie

Do odczytu i zapisu danych JSON w Javie używamy org.json biblioteka. The org.json biblioteka pozwala nam kodować i dekodować dane JSON w Javie. The org.json class udostępnia kilka ważnych klas, za pomocą których możemy wykonać kilka operacji na danych JSON. Klasy te są następujące:

  1. Obiekt JSON
  2. Wartość JSON
  3. Tablica JSON
  4. Numer JSON
  5. JSONString

Oto następujące kroki, aby iterować tablicę JSON w Javie:

1) Utwórz Mavena projekt i dodaj json zależność w POM.xml plik.

 org.json json 20160810  

Iteruj tablicę JSON w Javie

2) Utwórz ciąg danych JSON, który konwertujemy na obiekt JSON w celu manipulowania jego danymi.

3) Następnie otrzymujemy tablicę JSON z obiektu JSON za pomocą pobierzJSONArray() metodę i zapisz ją w zmiennej typu JSONArray.

4) pobierzJSONArray() Metoda przyjmuje nazwę tablicy jako ciąg znaków do pobrania z obiektu.

5) Następnie używamy pętli for od 0 do JSONArray.length(). Metoda długości() zwraca rozmiar tablicy.

6) Każdy rekord indeksu przechowujemy w obiekcie JSONObject. Aby uzyskać obiekt JSON określonego indeksu, używamy metody getJSONObject() JSONArray.

7) Aby uzyskać wartość określonego pola, używamy metody get() obiektu JSONObject, przekazując nazwę pola jako ciąg znaków w metodzie get().

JSONPrzykład.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();>