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:
- JSONObject
- JSON-verdi
- JSONArray
- JSONNumber
- 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
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 = '{'locations':[{'lat':'23.053','long':'72.629','location':'ABC','address':'DEF','city':'Ahmedabad','state':'Gujrat','phonenumber':'1234567'},{'lat':'21.013','long':'52.619','location':'XYZ','address':'MNP','city':'Ghaziabad','state':'UP','phonenumber':'212321'}]}'; // 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('locations'); // 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('name', 'Abhishek Sharma'); jsonObject.put('department','B.E'); jsonObject.put('branch', 'C.S.E'); jsonObject.put('year', 3); //create JSON Array and store record into JSONObject JSONArray list1 = new JSONArray(); list1.add('Julia'); list1.add('Paul'); list1.add('Emma'); jsonObject.put('Names', list1); JSONArray list2 = new JSONArray(); list2.add('BCA'); list2.add('B.Tech'); list2.add('MCA'); jsonObject.put('Course', list2); JSONArray list3 = new JSONArray(); list3.add('3'); list3.add('4'); list3.add('2'); jsonObject.put('Year', list3); // create instance of the FileWriter class by passing the path of the file in the constructor try (FileWriter file = new FileWriter('D:\newfile.json')) { // 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('Names'); // 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();>