JSON to XML

JSON को XML फ़ॉर्मेट में बदलें

उदाहरण देखें

JSON इनपुट

XML आउटपुट

स्थानीय रूप से चलता है · सीक्रेट पेस्ट करना सुरक्षित है
XML यहाँ दिखेगा…

JSON से XML रूपांतरण क्या है?

JSON (JavaScript Object Notation) और XML (eXtensible Markup Language) सॉफ़्टवेयर विकास में डेटा आदान-प्रदान के दो प्रमुख फ़ॉर्मेट हैं। JSON key-value pairs और ऐरे का उपयोग एक संक्षिप्त वाक्यविन्यास में करता है, जबकि XML डेटा को प्रारंभिक और समापन टैग में वैकल्पिक विशेषताओं के साथ लपेटता है। JSON को XML में बदलने का अर्थ है JSON की संरचनात्मक मूल इकाइयों — ऑब्जेक्ट, ऐरे, स्ट्रिंग, संख्या, बूलियन और null — को उचित तत्व नेस्टिंग वाले एक well-formed XML दस्तावेज़ में अनुवाद करना।

XML अनेक उद्यम प्रणालियों, सरकारी API, SOAP वेब सेवाओं और उद्योग मानकों जैसे HL7 (स्वास्थ्य सेवा), FpML (वित्त) और XBRL (वित्तीय रिपोर्टिंग) में आवश्यक फ़ॉर्मेट बना हुआ है। जब आपका अनुप्रयोग JSON उत्पन्न करता है परंतु उपभोक्ता प्रणाली XML की अपेक्षा रखती है, तो JSON से XML कनवर्टर मैन्युअल पुनर्संरचना के बिना यह अनुवाद करता है। रूपांतरण पूर्वानुमेय मानचित्रण नियमों का पालन करता है: JSON ऑब्जेक्ट XML तत्व बनते हैं, ऐरे आइटम बार-बार आने वाले sibling तत्व बनते हैं, और आदिम मान पाठ नोड बनते हैं।

कोई एकल RFC या W3C मानक नहीं है जो यह परिभाषित करे कि JSON किस प्रकार XML में मानचित्रित होता है। भिन्न-भिन्न लाइब्रेरी एक ही इनपुट के लिए भिन्न आउटपुट उत्पन्न करती हैं। सबसे सामान्य परंपरा (जो इस टूल द्वारा अपनाई जाती है) पूरे दस्तावेज़ को एक कॉन्फ़िगर करने योग्य रूट तत्व में लपेटती है, प्रत्येक JSON कुंजी को एक XML चाइल्ड तत्व में बदलती है और ऐरे आइटम को समान टैग नाम वाले बार-बार आने वाले तत्वों के रूप में दर्शाती है। ये मानचित्रण नियम तब महत्वपूर्ण होते हैं जब प्राप्तकर्ता प्रणाली किसी विशिष्ट XML स्कीमा (XSD) को लागू करती है।

ऑनलाइन JSON से XML कनवर्टर का उपयोग क्यों करें?

JSON स्रोत से XML हाथ से लिखना थकाऊ और त्रुटिपूर्ण होता है। असंगत टैग, भूले हुए समापन तत्व और गलत नेस्टिंग से ऐसे दस्तावेज़ बनते हैं जो स्कीमा सत्यापन में विफल हो जाते हैं। कनवर्टर संरचनात्मक अनुवाद स्वचालित रूप से करता है।

ब्राउज़र में तुरंत रूपांतरण
JSON चिपकाएँ और कुछ ही मिलीसेकंड में well-formed XML प्राप्त करें। कोई सर्वर राउंड-ट्रिप नहीं, कोई CLI सेटअप नहीं, कोई निर्भरता स्थापना नहीं। रूपांतरण पूरी तरह आपके डिवाइस पर JavaScript में चलता है।
🔒
संवेदनशील डेटा सुरक्षित रहता है
आपका JSON इनपुट ब्राउज़र टैब से बाहर नहीं जाता। सभी पार्सिंग और XML निर्माण क्लाइंट-साइड पर होता है, जिससे API कुंजियाँ, टोकन या उत्पादन डेटा वाले पेलोड बदलना सुरक्षित रहता है।
📋
कोई खाता या लॉगिन आवश्यक नहीं
पृष्ठ खोलें, अपना JSON चिपकाएँ और XML आउटपुट प्रतिलिपि करें। कोई साइनअप प्रपत्र, ईमेल सत्यापन या उपयोग सीमा नहीं है।
🌳
नेस्टेड संरचनाएँ स्वचालित रूप से संभाली जाती हैं
गहराई से नेस्टेड ऑब्जेक्ट, मिश्रित ऐरे और null मान सभी सही ढंग से बदले जाते हैं। टूल आपके JSON इनपुट की पूरी पदानुक्रम परिणामी XML वृक्ष में सुरक्षित रखता है।

JSON से XML उपयोग के मामले

SOAP वेब सेवा एकीकरण
आपका REST API JSON लौटाता है, परंतु किसी सहयोगी का SOAP एंडपॉइंट XML अनुरोध बॉडी की अपेक्षा करता है। JSON पेलोड को SOAP लिफाफे में लपेटने से पहले XML में बदलें।
उद्यम डेटा आदान-प्रदान
पुरानी ERP और CRM प्रणालियाँ अक्सर केवल XML आयात स्वीकार करती हैं। आधुनिक टूल से JSON निर्यात को ऐसी XML फ़ीड में बदलें जो अपेक्षित स्कीमा से मेल खाए।
CI/CD पाइपलाइन कॉन्फ़िगरेशन
कुछ बिल्ड टूल (Maven, Ant, MSBuild) XML कॉन्फ़िगरेशन फ़ाइलों का उपयोग करते हैं। स्वचालित बिल्ड के दौरान JSON पैरामीटर फ़ाइलों से XML कॉन्फ़िगरेशन खंड उत्पन्न करें।
QA परीक्षण डेटा तैयारी
JSON डेटासेट से XML परीक्षण फ़िक्सचर उत्पन्न करें। XML पार्सर, XSLT रूपांतरण या XPath क्वेरी परीक्षण के लिए शीघ्र ही वैध XML दस्तावेज़ बनाएँ।
डेटा पाइपलाइन फ़ॉर्मेट सेतु
XML अंतर्ग्रहण करने वाली ETL पाइपलाइनें JSON-उत्पादक API से डेटा प्राप्त कर सकती हैं। XML-आधारित प्रसंस्करण चरण में लोड करने से पहले मध्यवर्ती JSON परिणामों को XML में बदलें।
XML संरचना सीखना
XML का अध्ययन करने वाले छात्र परिचित JSON संरचनाएँ चिपका सकते हैं और समतुल्य XML प्रतिनिधित्व देख सकते हैं। इससे टैग नेस्टिंग, तत्व पदानुक्रम और दस्तावेज़ संरचना ठोस रूप से स्पष्ट होती है।

JSON से XML मानचित्रण नियम

चूँकि JSON-से-XML रूपांतरण को कोई सार्वभौमिक मानक नहीं नियंत्रित करता, इसलिए भिन्न-भिन्न टूल भिन्न आउटपुट उत्पन्न करते हैं। नीचे दी गई तालिका इस कनवर्टर और अधिकांश लोकप्रिय लाइब्रेरी (js2xmlparser, xmlbuilder, fast-xml-parser) द्वारा उपयोग की जाने वाली मानचित्रण परंपराएँ दर्शाती है। ऐरे के लिए बार-बार आने वाले sibling तत्वों की परंपरा प्रमुख बन गई क्योंकि यह उस तरीके को दर्शाती है जिसमें XML स्कीमा स्वाभाविक रूप से संग्रह का मॉडल बनाती हैं — प्रत्येक आइटम एक प्रथम-श्रेणी तत्व होता है न कि लिपटा हुआ चाइल्ड — और यह XPath क्वेरी तथा XSLT रूपांतरणों के साथ सहजता से एकीकृत होता है।

JSON TypeJSON ExampleXML Output
Object{"name": "Alice"}<name>Alice</name>
Nested object{"user": {"age": 30}}<user><age>30</age></user>
Array{"colors": ["red", "blue"]}<colors>red</colors><colors>blue</colors>
String"hello"<root>hello</root>
Number42<root>42</root>
Booleantrue<root>true</root>
Nullnull<root/>
Empty object{}<root/>
Empty array[](no child elements)

कोड उदाहरण

नीचे तीन environments में JSON को XML में बदलने के लिए चलाने योग्य कोड अंश दिए गए हैं। प्रत्येक उदाहरण एक नमूना JSON ऑब्जेक्ट से well-formed XML उत्पन्न करता है।

JavaScript (Node.js)
import { create } from 'xmlbuilder2';

const json = {
  order: {
    id: 1024,
    items: [
      { sku: "A1", qty: 2 },
      { sku: "B3", qty: 1 }
    ],
    shipped: false
  }
};

const xml = create({ version: '1.0' })
  .ele(json)
  .end({ prettyPrint: true });

console.log(xml);
// → <?xml version="1.0"?>
// → <order>
// →   <id>1024</id>
// →   <items>
// →     <sku>A1</sku>
// →     <qty>2</qty>
// →   </items>
// →   <items>
// →     <sku>B3</sku>
// →     <qty>1</qty>
// →   </items>
// →   <shipped>false</shipped>
// → </order>
Python
import json
import xmltodict

data = {
    "order": {
        "id": 1024,
        "items": [
            {"sku": "A1", "qty": 2},
            {"sku": "B3", "qty": 1}
        ],
        "shipped": False
    }
}

# xmltodict.unparse expects a single root key
xml = xmltodict.unparse(data, pretty=True)
print(xml)
# → <?xml version="1.0" encoding="utf-8"?>
# → <order>
# →   <id>1024</id>
# →   <items>
# →     <sku>A1</sku>
# →     <qty>2</qty>
# →   </items>
# →   <items>
# →     <sku>B3</sku>
# →     <qty>1</qty>
# →   </items>
# →   <shipped>false</shipped>
# → </order>
Go
package main

import (
	"encoding/json"
	"encoding/xml"
	"fmt"
)

type Item struct {
	SKU string `json:"sku" xml:"sku"`
	Qty int    `json:"qty" xml:"qty"`
}

type Order struct {
	XMLName xml.Name `xml:"order"`
	ID      int      `json:"id" xml:"id"`
	Items   []Item   `json:"items" xml:"items"`
	Shipped bool     `json:"shipped" xml:"shipped"`
}

func main() {
	raw := `{"id":1024,"items":[{"sku":"A1","qty":2},{"sku":"B3","qty":1}],"shipped":false}`

	var order Order
	json.Unmarshal([]byte(raw), &order)

	out, _ := xml.MarshalIndent(order, "", "  ")
	fmt.Println(xml.Header + string(out))
	// → <?xml version="1.0" encoding="UTF-8"?>
	// → <order>
	// →   <id>1024</id>
	// →   <items>
	// →     <sku>A1</sku>
	// →     <qty>2</qty>
	// →   </items>
	// →   ...
}

अक्सर पूछे जाने वाले प्रश्न

क्या JSON से XML रूपांतरण बिना डेटा हानि के होता है?
संरचनात्मक दृष्टि से, हाँ — प्रत्येक JSON मान एक XML तत्व या पाठ नोड में मानचित्रित होता है। हालाँकि, XML मूल रूप से संख्याओं, बूलियन और स्ट्रिंग के बीच उस प्रकार अंतर नहीं करता जैसा JSON करता है। JSON में 42 का मान XML में पाठ सामग्री "42" बन जाता है। यदि प्राप्तकर्ता प्रणाली XML Schema (XSD) प्रकार घोषणाओं पर निर्भर करती है, तो वह पार्सिंग के दौरान मूल प्रकार पुनः प्राप्त कर सकती है। स्कीमा के बिना, रूपांतरित दस्तावेज़ में प्रकार जानकारी प्रभावी रूप से खो जाती है।
JSON ऐरे को XML में कैसे बदला जाता है?
प्रत्येक ऐरे आइटम समान टैग नाम वाला एक sibling XML तत्व बनता है। उदाहरण के लिए, JSON ऐरे "colors": ["red", "blue"] दो तत्व उत्पन्न करता है: &lt;colors&gt;red&lt;/colors&gt; और &lt;colors&gt;blue&lt;/colors&gt;। कुछ कनवर्टर ऐरे को एक मूल तत्व में लपेटते हैं (जैसे &lt;colorsList&gt;), परंतु बार-बार आने वाले sibling तत्वों का तरीका अधिक सामान्य है और JAXB, Jackson तथा fast-xml-parser द्वारा अपनाई गई परंपरा से मेल खाता है।
रूपांतरण में null मानों का क्या होता है?
JSON null सामान्यतः एक रिक्त XML तत्व में बदलता है — उदाहरण के लिए, "middle_name": null &lt;middle_name/&gt; बन जाता है। कुछ लाइब्रेरी स्पष्ट null संकेत देने के लिए xsi:nil="true" विशेषता जोड़ती हैं, जो तब उपयोगी है जब लक्षित प्रणाली XSD स्कीमा के विरुद्ध सत्यापन करती है। यह कनवर्टर डिफ़ॉल्ट रूप से स्वयं-समापन रिक्त तत्व आउटपुट करता है।
क्या मैं XML को वापस JSON में बदल सकता हूँ?
हाँ, परंतु यह प्रक्रिया हमेशा reversible नहीं होती। XML की विशेषताएँ जैसे एट्रिब्यूट, प्रसंस्करण निर्देश, टिप्पणियाँ, मिश्रित सामग्री और नेमस्पेस का JSON में कोई प्रत्यक्ष समतुल्य नहीं है। XML को JSON में और फिर वापस XML में बदलने से संरचनात्मक रूप से भिन्न दस्तावेज़ बन सकता है। यदि आपको XML से JSON रूपांतरण की आवश्यकता है, तो एक समर्पित XML to JSON कनवर्टर का उपयोग करें जो एट्रिब्यूट और नेमस्पेस को सुरक्षित रखता हो।
ऐसी JSON कुंजियों को कैसे संभाला जाए जो वैध XML तत्व नाम नहीं हैं?
XML तत्व नाम किसी अंक से प्रारंभ नहीं हो सकते, रिक्त स्थान नहीं रख सकते और अधिकांश विशेष वर्ण नहीं रख सकते। यदि आपके JSON में "2024-data" या "first name" जैसी कुंजी है, तो कनवर्टर को उसे ठीक करना होगा — सामान्यतः अंडरस्कोर उपसर्ग जोड़कर या अमान्य वर्णों को अंडरस्कोर से बदलकर। यदि परिणामी XML को XSD सत्यापन पार करना हो, तो कनवर्टर के आउटपुट की जाँच करें और स्रोत JSON में कुंजी नाम समायोजित करें।
यह टूल अधिकतम कितने आकार का JSON संभाल सकता है?
कनवर्टर आपके ब्राउज़र के JavaScript इंजन में चलता है, इसलिए व्यावहारिक सीमा उपलब्ध मेमोरी पर निर्भर करती है। अधिकांश आधुनिक ब्राउज़र बिना किसी समस्या के 50–100 MB तक के JSON दस्तावेज़ संभालते हैं। इससे बड़ी फ़ाइलों के लिए Python की xmltodict लाइब्रेरी या कोई कमांड-लाइन टूल का उपयोग करें जो डेटा को incrementally process करे न कि पूरा मेमोरी में लोड करे।
क्या आउटपुट XML well-formed या वैध है?
आउटपुट हमेशा well-formed XML होता है — टैग उचित रूप से नेस्टेड हैं, विशेष वर्ण escape किए गए हैं और दस्तावेज़ में एकल रूट तत्व है। आउटपुट वैध है या नहीं, यह लक्षित स्कीमा (XSD या DTD) पर निर्भर करता है। well-formedness एक संरचनात्मक गारंटी है; वैधता के लिए आवश्यक है कि तत्व नाम, नेस्टिंग क्रम और सामग्री प्रकार किसी विशिष्ट स्कीमा परिभाषा से मेल खाएँ।