Repetați JSON Array Java
Pentru a citi și scrie date JSON în Java, folosim org.json bibliotecă. The org.json biblioteca ne permite să codificăm și să decodăm datele JSON în Java. The org.json class oferă mai multe clase importante prin care putem efectua mai multe operații asupra datelor JSON respective. Aceste clase sunt după cum urmează:
- JSONObject
- JSONValue
- JSONArray
- JSONNumber
- JSONString
Aceștia sunt următorii pași pentru a repeta matricea JSON în Java:
1) Creați un Maven proiectați și adăugați json dependenta in POM.xml fişier.
org.json json 20160810
2) Creați un șir de date JSON pe care îl convertim în obiect JSON pentru a le manipula datele.
3) După aceea, obținem matricea JSON din obiectul JSON folosind getJSONArray() metoda și stocați-o într-o variabilă de tip JSONArray.
4) Cel getJSONArray() metoda ia numele matricei ca șir pentru a fi preluat din obiect.
5) Apoi folosim o buclă for de la 0 la JSONArray.length(). Metoda length() returnează dimensiunea matricei.
6) Stocăm fiecare înregistrare index într-un JSONObject. Pentru a obține obiectul JSON al unui anumit index, folosim metoda getJSONObject() din JSONArray.
7) Pentru a obține o valoare a unui câmp specificat, folosim metoda get() a JSONObject, pasând numele câmpului ca șir în metoda get().
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();>