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

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

JSONArray वैल्यूज का एक क्रम है, बाहरी टेक्स्ट कॉमा सेपरेटेड वैल्यूज के साथ स्क्वायर ब्रैकेट्स में संलग्न एक स्ट्रिंग है और आंतरिक टेक्स्ट एक ऑब्जेक्ट है जिसमें get() और opt() मेथड्स होते हैं, हमें इंडेक्स द्वारा उन वैल्यूज को एक्सेस करने की आवश्यकता होती है। एलिमेंट्स को जोड़ने या रिप्लेस करने के लिए element() मेथड। एक ऐरे एक ऑब्जेक्ट है जो सेम टाइप की मल्टीपल वैल्यूज को स्टोर करता है। यह प्रिमिटिव टाइप्स और ऑब्जेक्ट रेफरेंसेज दोनों को होल्ड कर सकता है। हम JSONArray क्लास के toArray() मेथड का उपयोग करके JSON ऐरे को ऐरे में कन्वर्ट कर सकते हैं। यह मेथड JSONArray के कंटेंट्स के साथ एक Object[] प्रोड्यूस करता है।

सिंटैक्स

public Object[] toArray()

उदाहरण

import java.util.Arrays;
import net.sf.json.JSONArray;

public class ConvertJSONArrayToArrayTest {
    public static void main(String[] args) {
        JSONArray jsonArray = new JSONArray()
            .element("Raja Ramesh")
            .element("115")
            .element("Tutorials Point")
            .element("Hyderabad")
            .element(new String[] {"Java", "Testing", "Python"});
        
        String jsonStr = jsonArray.toString(3); // प्रिटी प्रिंट JSON
        System.out.println("JSON:\n" + jsonStr);
        
        Object[] array = jsonArray.toArray();
        System.out.println("-------------------------------------------------------------------");
        System.out.println("Array:\n" + Arrays.toString(array));
    }
}

आउटपुट

JSON:
[
    "Raja Ramesh",
    "115",
    "Tutorials Point",
    "Hyderabad",
    [
        "Java",
        "Testing",
        "Python"
    ]
]
-------------------------------------------------------------------
Array:
[Raja Ramesh, 115, Tutorials Point, Hyderabad, ["Java","Testing","Python"]]

मुख्य बिंदु

  • रिटर्न टाइप: Object[] (जेनेरिक टाइप नहीं, क्योंकि JSONArray मिक्स्ड टाइप्स होल्ड कर सकता है)
  • नेस्टेड ऐरे: नेस्टेड JSONArray भी Object[] के रूप में कन्वर्ट होता है
  • प्रिमिटिव्स: प्रिमिटिव वैल्यूज उनके व्रैपर टाइप्स में कन्वर्ट होती हैं (int → Integer)

टाइप-सेफ कन्वर्जन

// String[] के लिए
String[] stringArray = jsonArray.toArray(new String[0]);

// विशिष्ट टाइप के लिए कस्टम कन्वर्जन
List<String> list = new ArrayList<>();
for (Object obj : jsonArray) {
    if (obj instanceof String) {
        list.add((String) obj);
    }
}
String[] safeArray = list.toArray(new String[0]);

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

पिछले आर्टिकल (1005094121) में दी गई Maven निर्भरताओं के समान।

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

ObjectMapper mapper = new ObjectMapper();
String[] array = mapper.readValue(jsonString, String[].class);
// या
List<String> list = mapper.readValue(jsonString, new TypeReference<List<String>>() {});

नोट

JSON-lib लिगेसी लाइब्रेरी है। नए प्रोजेक्ट्स के लिए Jackson, Gson, या JSON-B का उपयोग करें जो टाइप-सेफ कन्वर्जन और बेहतर परफॉरमेंस प्रदान करते हैं।

  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 में बदलें निम्न उद