Ismételje meg a Java JSON-tömböt
A JSON-adatok Java nyelvű olvasásához és írásához használjuk org.json könyvtár. A org.json könyvtár lehetővé teszi a JSON-adatok kódolását és dekódolását Java nyelven. A org.json osztály számos fontos osztályt biztosít, amelyeken keresztül számos műveletet hajthatunk végre az adott JSON-adatokon. Ezek az osztályok a következők:
- JSONObject
- JSONValue
- JSONArray
- JSONNumber
- JSONString
A következő lépések a következők a JSON-tömb Java nyelven történő iterálásához:
1) Hozzon létre a Maven projekt és add json függőség benne POM.xml fájlt.
org.json json 20160810
2) Hozzon létre egy JSON-adatokból álló karakterláncot, amelyet JSON-objektummá alakítunk az adatok manipulálásához.
3) Ezt követően megkapjuk a JSON-tömböt a JSON-objektumból getJSONArray() módszert, és tárolja egy JSONArray típusú változóban.
4) A getJSONArray() A metódus a tömb nevét karakterláncként veszi fel, amelyet az objektumból kell lekérni.
5) Ezután egy for ciklust használunk 0-tól JSONArray.length()-ig. A long() metódus a tömb méretét adja vissza.
6) Minden indexrekordot egy JSONObject-ben tárolunk. Egy adott index JSON-objektumának beszerzéséhez a JSONArray getJSONObject() metódusát használjuk.
7) Egy megadott mező értékének megszerzéséhez a JSONObject get() metódusát használjuk úgy, hogy a mező nevét karakterláncként adjuk át a get() metódusban.
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();>