Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Java

जावा में JSON-lib API का उपयोग करके कलेक्शन को JSON ऐरे में कैसे कन्वर्ट करें

net.sf.json.JSONArray वैल्यूज का एक ऑर्डर्ड सीक्वेंस है। इसका बाहरी टेक्स्ट फॉर्म कॉमा सेपरेटेड वैल्यूज के साथ स्क्वायर ब्रैकेट्स में रैप्ड स्ट्रिंग है और आंतरिक फॉर्म एक ऑब्जेक्ट है जिसमें इंडेक्स द्वारा वैल्यूज एक्सेस करने के लिए get() और opt() मेथड्स, और वैल्यूज जोड़ने या रिप्लेस करने के लिए element() मेथड होता है। वैल्यूज इनमें से किसी भी टाइप की हो सकती हैं: बूलियन, JSONArray, JSONObject, नंबर, स्ट्रिंग और JSONNull ऑब्जेक्ट।

उदाहरण

import java.util.*;
import net.sf.json.JSONArray;
import net.sf.json.JSONSerializer;

public class ConvertCollectionToJsonArrayTest {
    public static void main(String[] args) {
        List<String> strList = Arrays.asList("India", "Australia", "England", "South Africa");
        JSONArray jsonArray = (JSONArray) JSONSerializer.toJSON(strList);
        System.out.println(jsonArray.toString(3)); // प्रिटी प्रिंट JSON
        
        List<Object> mixedList = Arrays.asList("List Data", 50, 99, 50.65, true, new String[]{"X", "Y", "Z"});
        JSONArray jsonArray2 = (JSONArray) JSONSerializer.toJSON(mixedList);
        System.out.println(jsonArray2.toString(3));
    }
}

आउटपुट

[
  "India",
  "Australia",
  "England",
  "South Africa"
]
[
  "List Data",
  50,
  99,
  50.65,
  true,
  [
    "X",
    "Y",
    "Z"
  ]
]

समर्थित कलेक्शन टाइप्स

कलेक्शन टाइप JSON आउटपुट
List (ArrayList, LinkedList)JSON ऐरे
Set (HashSet, TreeSet)JSON ऐरे (ऑर्डर सेट पर निर्भर)
Queue (PriorityQueue, आदि)JSON ऐरे
Collection (इंटरफेस)JSON ऐरे

महत्वपूर्ण नोट्स

  • Set ऑर्डरिंग: HashSet का ऑर्डर अनप्रेडिक्टेबल है, TreeSet सॉर्टेड ऑर्डर देगा
  • मिक्स्ड टाइप्स: List<Object> अलग-अलग टाइप्स को होल्ड कर सकता है (स्ट्रिंग, नंबर, बूलियन, ऐरे)
  • नेस्टेड कलेक्शन्स: List<List<String>> नेस्टेड JSON ऐरे बनाता है
  • null एलिमेंट्स: JSON null के रूप में सीरियलाइज होते हैं

कस्टम ऑब्जेक्ट्स के साथ कलेक्शन

List<Employee> employees = Arrays.asList(
    new Employee("John", 30),
    new Employee("Jane", 25)
);
JSONArray jsonArray = (JSONArray) JSONSerializer.toJSON(employees);
// प्रत्येक Employee बीन JSON ऑब्जेक्ट बन जाता है

आधुनिक विकल्प (Jackson)

ObjectMapper mapper = new ObjectMapper();
List<String> list = Arrays.asList("A", "B", "C");
String json = mapper.writeValueAsString(list);
// या
JsonNode node = mapper.valueToTree(list);

आधुनिक विकल्प (Gson)

Gson gson = new Gson();
List<String> list = Arrays.asList("A", "B", "C");
String json = gson.toJson(list);

JSON-lib निर्भरताएं

पिछले JSON-lib आर्टिकल्स देखें (1005094121)।

नोट

JSONSerializer.toJSON() किसी भी Collection इम्प्लीमेंटेशन को हैंडल कर सकता है। यह कलेक्शन को इटरेट करता है और प्रत्येक एलिमेंट को JSON वैल्यू में कन्वर्ट करता है।

  1. Java का उपयोग करके JSON ऐरे कैसे लिखें/बनाएं? Java का उपयोग करके JSON ऐरे कैसे लिखें/बनाएं?

    एक JSON ऐरे मानों का एक क्रमबद्ध संग्रह है जो वर्गाकार कोष्ठकों में संलग्न होता है यानी यह ‘[’ से शुरू होता है और ‘]’ पर समाप्त होता है। ऐरे में मान ‘,’ (कॉमा) से अलग किए जाते हैं। नमूना JSON ऐरे { books: [ Java, JavaFX, Hbase, Cassandra, WebGL, JOGL] } js

  1. - Java का उपयोग करके JSON ऐरे कैसे पढ़ें/पार्स करें?

    एक JSON ऐरे मानों का एक क्रमबद्ध संग्रह है जो वर्गाकार कोष्ठकों में संलग्न होता है यानी यह ‘[’ से शुरू होता है और ‘]’ पर समाप्त होता है। ऐरे में मान ‘,’ (कॉमा) से अलग किए जाते हैं। नमूना JSON ऐरे { books: [ Java, JavaFX, Hbase, Cassandra, WebGL, JOGL] } js

  1. - Java Map को JSON में बदलना: Jackson, Gson, और org.json के साथ चरण-दर-चरण गाइड

    Java Map को JSON में बदलने के कई तरीके हैं। Java Arrays और Maps को JSON में बदलना और इसके विपरीत करना काफी आम है। इस पोस्ट में, हम Java Map को JSON में बदलने के 3 अलग-अलग उदाहरण देखेंगे। हम Jackson, Gson और org.json लाइब्रेरी का उपयोग करेंगे। Jackson का उपयोग करके Java Map को JSON में बदलें निम्न उद