XML से JSON

ब्राउज़र में चलता है JSON और डेटा

XML को ब्राउज़र में ही पार्स करें और एक अनुमानित JSON स्ट्रक्चर पाएँ: एट्रिब्यूट पर उपसर्ग लगता है, दोहराए गए चाइल्ड ऐरे बन जाते हैं और टेक्स्ट कंटेंट सुरक्षित रहता है।

गोपनीयता: यह टूल पूरी तरह आपके ब्राउज़र में चलता है। आपका इनपुट कभी आपके डिवाइस से बाहर नहीं जाता।
टूल लोड हो रहा है…

JSON, CSV, YAML और XML के बीच डेटा बदलने पर क्या बदलता है?

चारों फ़ॉर्मेट डेटा को अलग तरह से मॉडल करते हैं: JSON और YAML नेस्टिंग व टाइप रखते हैं, CSV स्ट्रिंग की सपाट तालिका है, और XML एलिमेंट व एट्रिब्यूट में फ़र्क करता है। इसलिए कन्वर्टर को फ़ैसले लेने पड़ते हैं — नेस्टेड ऑब्जेक्ट कॉलम में कैसे सपाट हों, "42" और "true" का टाइप क्या हो, एट्रिब्यूट कहाँ जाएँ — और सही फ़ैसला उस पर निर्भर है जो रिसीविंग सिस्टम अपेक्षित करता है।

गाइड पढ़ें: JSON क्या है?

XML से JSON कैसे इस्तेमाल करें

  1. XML डॉक्यूमेंट पेस्ट करें।
  2. तय करें कि एट्रिब्यूट रखने हैं या नहीं, संख्या/बूलियन पार्स करने हैं या नहीं, और कौन-से एलिमेंट हमेशा ऐरे होने चाहिए।
  3. JSON कॉपी करें या डाउनलोड करें।
एक <product> ऑब्जेक्ट बनता है और दो ऐरे; product को "हमेशा-ऐरे एलिमेंट" में सूचीबद्ध करने से हर बार ऐरे मिलता है।

एक बार आता है

<catalog> में एक <product>

"product": { "name": "Keyboard", "@_id": "p-1" }

हमेशा-ऐरे एलिमेंट:
खाली
JSON में product:
ऑब्जेक्ट

दोहराया गया

दो सहोदर <product> एलिमेंट, जैसे उदाहरण में

"product": [ { "name": "Keyboard", "@_id": "p-1" }, { "name": "Mouse", "@_id": "p-2" } ]

हमेशा-ऐरे एलिमेंट:
खाली
JSON में product:
2 आइटम का ऐरे

एक बार, ऐरे ज़रूरी किया गया

वही एक <product>, product को "हमेशा-ऐरे एलिमेंट" में सूचीबद्ध करके

"product": [ { "name": "Keyboard", "@_id": "p-1" } ]

हमेशा-ऐरे एलिमेंट:
product
JSON में product:
1 आइटम का ऐरे

हर कोड बॉक्स डिफ़ॉल्ट विकल्पों के साथ उस XML के लिए टूल के अपने आउटपुट में "catalog" के नीचे का हिस्सा है; एट्रिब्यूट id से "@_id" बनता है।

XML से JSON की खूबियाँ

  • गड़बड़ XML के लिए लाइन और कॉलम के साथ well-formedness जाँच
  • एट्रिब्यूट @_ उपसर्ग के साथ सुरक्षित रहते हैं (या चाहें तो हटा दिए जाते हैं)
  • दोहराए गए चाइल्ड ऐरे बनते हैं; किसी भी एलिमेंट नाम के लिए ऐरे ज़रूरी किया जा सकता है
  • संख्यात्मक और बूलियन टेक्स्ट वैल्यू का वैकल्पिक कन्वर्ज़न
  • CDATA कंटेंट और एंटिटी डिकोड की जाती हैं
  • रूट एलिमेंट, एलिमेंट की संख्या और डेप्थ का सारांश

XML से JSON का उदाहरण

एट्रिब्यूट और दोहराए गए एलिमेंट वाला कैटलॉग

इनपुट:

<catalog><product id="p-1"><name>Keyboard</name></product><product id="p-2"><name>Mouse</name></product></catalog>

आउटपुट:

{
  "catalog": {
    "product": [
      { "name": "Keyboard", "@_id": "p-1" },
      { "name": "Mouse", "@_id": "p-2" }
    ]
  }
}

XML से JSON के बारे में अक्सर पूछे जाने वाले सवाल

एट्रिब्यूट कैसे दर्शाए जाते हैं?

एट्रिब्यूट @_ उपसर्ग वाली कीज़ बन जाते हैं (जैसे "@_id")। अगर किसी एलिमेंट में एट्रिब्यूट और टेक्स्ट दोनों हों, तो टेक्स्ट "#text" के नीचे रखा जाता है। आप एट्रिब्यूट पूरी तरह हटा भी सकते हैं।

एक एलिमेंट ऑब्जेक्ट और दूसरा ऐरे क्यों बनता है?

दोहराए गए सहोदर एलिमेंट एक ऐरे में इकट्ठे होते हैं; जो एलिमेंट एक ही बार आता है वह ऑब्जेक्ट रहता है। एकसमान ऐरे आकार पाने के लिए एलिमेंट नाम "हमेशा-ऐरे एलिमेंट" में सूचीबद्ध करें।

क्या संख्या और बूलियन बदले जाते हैं?

डिफ़ॉल्ट रूप से 42, 3.5 और true जैसे टेक्स्ट JSON संख्या और बूलियन में बदल जाते हैं। हर वैल्यू को स्ट्रिंग रखने के लिए "Parse numbers & booleans" बंद कर दें (पिन कोड और शुरुआती शून्य वाली ID के लिए उपयोगी)।

CDATA, कमेंट और नेमस्पेस का क्या होता है?

CDATA कंटेंट टेक्स्ट के रूप में शामिल होता है, कमेंट और प्रोसेसिंग इंस्ट्रक्शन हटा दिए जाते हैं, और soap:Body जैसे नेमस्पेस वाले नाम ज्यों के त्यों कीज़ के रूप में रखे जाते हैं।

संदर्भ