24 converter इकाइयाँ · मुद्राएँ · फ़ाइलें

XML को JSON में बदलना Extensible Markup Language ↔ JavaScript Object Notation मुफ़्त ऑनलाइन सुरक्षित

एक XML फ़ाइल छोड़िए और JSON ले जाइए। पढ़ना और लिखना यहीं, आपके ब्राउज़र में होता है, सो फ़ाइल आपके उपकरण से बाहर नहीं जाती — और यह यात्रा क्या बचाती है और क्या नहीं, वह नीचे लिखा है, आपके ख़ुद पता लगाने पर नहीं छोड़ा गया।

अपनी फ़ाइल बदलिए

यहाँ एक XML फ़ाइल छोड़िए, या कोई चुनिए।

आपकी फ़ाइल इस उपकरण से बाहर नहीं जाती। सब कुछ आपके ब्राउज़र में चलता है।

इस बदलने वाले औज़ार के बारे में
क्या बचा रहता है तत्वों के नाम, उनका एक-दूसरे में बैठना, उनके गुण और उनका पाठ। एक गुण अपना नाम आगे @ लगाकर रखता है; जो पाठ संतान-तत्वों के साथ एक ही तत्व में हो वह ‎#text के नीचे रखा जाता है, क्योंकि और कहीं जगह नहीं।
क्या नहीं कर सकता XML में एक बात है जिसके लिए JSON के पास शब्द नहीं: तत्व क्रम में होते हैं और दोहराए जा सकते हैं। जो नाम एक बार आए वह मान बन जाता है और जो दो बार आए वह सूची, सो परिणाम को वापस पढ़ने से हमेशा वही XML नहीं मिलता। टिप्पणियाँ, संसाधन-निर्देश और XML की घोषणा डेटा का हिस्सा नहीं हैं और पार नहीं आतीं।
कहाँ चलता है आपके ब्राउज़र में। कुछ भी अपलोड नहीं होता, इसलिए बाद में मिटाने को भी कुछ नहीं बचता।

कुछ भी अपलोड नहीं

XML से रूपांतरण

XML में रूपांतरण

ये प्रारूप कहाँ से आए

CSV सबसे पुराना और सबसे कम मानकीकृत है: एक सारणी जो पाठ की पंक्तियों के रूप में लिखी जाती है, 1970 के दशक से प्रयोग में और लिखित रूप में वर्णित हुआ केवल 2005 में, जब तक हर प्रोग्राम स्वयं तय कर चुका था कि विभाजक क्या है और उद्धरण-चिह्न कब लगाने हैं। XML 1998 में SGML से उपजा, उन दस्तावेज़ों के लिए जिन्हें कठोर संरचना ढोनी हो और किसी ढाँचे के विरुद्ध जाँचा जाना हो। JSON को डगलस क्रॉकफ़ोर्ड ने 2001 के आसपास जावास्क्रिप्ट से निकाला, जानबूझकर उसे वस्तुओं, सूचियों, संख्याओं और शब्द-लड़ियों तक घटा दिया — और वही न्यूनतावाद उसके वेब पर छा जाने का कारण है। YAML उसका पठनीय चचेरा भाई है, जहाँ अंतराल वह काम करता है जो अन्यत्र कोष्ठक करते हैं। इनके बीच रूपांतरण में केवल एक बात मायने रखती है: CSV चपटा है, पंक्तियों और स्तंभों की जाली; जबकि JSON, XML और YAML वृक्ष हैं।

ये आपको कहाँ मिलते हैं

CSV वह है जो स्प्रेडशीट निर्यात करती है और जो कोई लेखाकार, कोई दुकान का मंच या बैंक का विवरण आपको थमाता है। JSON वह है जो वेब की सेवाएँ आपस में बोलती हैं और जिसमें विन्यास-फ़ाइलें बढ़ते क्रम में लिखी जाती हैं। XML पुराने संस्थागत तंत्रों में, बीजक के मानकों में, और स्वयं कार्यालयी प्रारूपों के भीतर जीवित है। YAML वह जगह है जहाँ मनुष्य हाथ से सेटिंग लिखते हैं। इनके बीच रूपांतरण वह दैनिक काम है जो आँकड़ों को उनके उद्गम से वहाँ ले जाता है जहाँ उनकी आवश्यकता है।

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

मेरी CSV एक्सेल में एक ही स्तंभ के रूप में खुली। क्यों?

क्योंकि आपकी स्प्रेडशीट किसी और विभाजक की प्रतीक्षा में थी। एक्सेल कंप्यूटर की क्षेत्रीय सेटिंग के सूची-विभाजक का अनुसरण करता है, और वह हर उस जगह अर्धविराम है जहाँ अल्पविराम पहले से दशमलव चिह्न है — अर्थात महाद्वीपीय यूरोप के बड़े भाग में। तब अल्पविराम से विभाजित फ़ाइल पाठ के एक स्तंभ जैसी दिखती है। फ़ाइल पर दो बार क्लिक करने के बजाय आयात-खिड़की का उपयोग करें और विभाजक स्पष्ट बताएँ। इसी क्षेत्रीय सेटिंग से यह भी होता है कि 3.5 कभी तिथि बनकर आ जाता है।

मेरा नेस्ट किया JSON साफ़-सुथरी स्प्रेडशीट क्यों नहीं बनता?

क्योंकि स्प्रेडशीट चपटी है और JSON एक वृक्ष। एक पंक्ति हर स्तंभ के लिए एक मान रखती है; जबकि JSON की एक वस्तु किसी क्षेत्र के भीतर की सूची के भीतर एक और सूची रख सकती है। रूपांतरण का अर्थ है यह चुनना कि उसे कैसे चपटा किया जाए: या तो नेस्ट किए नामों को जोड़कर एक लंबा स्तंभ-शीर्षक बना दें, या जनक पंक्ति को हर संतान के लिए एक बार दोहरा दें। दोनों समझौते हैं, और कोई भी स्वतः पूर्ववत नहीं हो सकता — इसीलिए स्प्रेडशीट से मूल आकृति की ओर लौटने के लिए प्रायः मानवीय निर्णय चाहिए।

क्या फ़ाइल की गुणवत्ता घटती है?

यह इस पर निर्भर है कि दोनों प्रारूप क्या-क्या सँभाल सकते हैं। ऐसे प्रारूपों के बीच रूपांतरण जो एक ही वस्तु रखते हैं — PNG से BMP, WAV से FLAC — कुछ नहीं खोता। ऐसे प्रारूप में बदलना जो स्थान बचाने के लिए सूचना फेंक देता है, जैसे JPEG या MP3, हर बार थोड़ा खोता है, और वापस बदलने से वह लौटता नहीं। जहाँ विकल्प हो, यह पृष्ठ सबसे छोटी फ़ाइल बनाने के बजाय मूल गुणवत्ता बनाए रखने की ओर झुकता है।

क्या मेरी फ़ाइल कहीं अपलोड होती है?

नहीं। रूपांतरण आपके ही यंत्र पर, आपके ब्राउज़र के भीतर होता है; फ़ाइल उसे कभी नहीं छोड़ती, और यहाँ कोई सर्वर है ही नहीं जो उसे ले सके। इसीलिए बड़ी फ़ाइल को अपलोड नहीं बल्कि आपकी अपनी स्मृति सीमित करती है, और इसीलिए आपका बदला हुआ कुछ भी किसी के अभिलेख में नहीं आ सकता — हमारे अभिलेख में भी नहीं। हाँ, ध्वनि और चलचित्र के उपकरण पहली बार प्रयोग पर अपना रूपांतरण-इंजन इसी स्थल से लाते हैं — लगभग तीस मेगाबाइट, एक ही बार; उसके बाद भी काम पूरा आपके ही यंत्र पर होता है।

लोग XML को JSON में क्यों बदलते हैं

XML संरचित डेटा का वरिष्ठ राजनेता है। बीस वर्षों से अधिक समय से वह कॉन्फ़िगरेशन फ़ाइलें, उत्पाद फ़ीड, चालान, साइटमैप, समाचार फ़ीड, लेखा प्रोग्रामों के निर्यात और पुरानी वेब सेवाओं के उत्तर ढोता आया है। वह सटीक और वाचाल है, खुलने और बंद होने वाले टैगों में लिखा। JSON उसका युवा प्रतिद्वंद्वी है: हल्का, पढ़ने में आसान और आधुनिक वेब कोड की स्वाभाविक भाषा, जहाँ प्रोग्राम लगभग बिना तैयारी के उसे उपयोग कर सकता है। जब फ़ीड या निर्यात XML के रूप में आए और जो उसे उपयोग करेगा वह JSON बोलता हो, तो रूपांतरण चाहिए। इसीलिए लोग XML को JSON में बदलते हैं: उनके पास पुराने रूप में डेटा है, और नए उपकरण नया चाहते हैं।

स्थितियाँ आम हैं। डेवलपर जिसे आधुनिक स्क्रिप्ट में पुरानी सेवा का उत्तर पढ़ना है। दुकान का मालिक जिसके पास XML में उत्पाद फ़ीड है और JSON आयात करने वाला मंच। डेटा विश्लेषक जो JSON सँभालने वाले उपकरण में बड़े निर्यात को देखना चाहता है। विद्यार्थी जिसे कोण कोष्ठकों से भरी फ़ाइल का अर्थ निकालना है। हर मामले में जानकारी वहाँ है, और कमी केवल अधिक सुविधाजनक रूप की है।

यह पृष्ठ आपके ब्राउज़र में XML को JSON में बदलता है। आपकी फ़ाइल यहीं पढ़ी और लिखी जाती है, इसलिए वह आपके उपकरण से कभी बाहर नहीं जाती, जो चालानों, ग्राहक डेटा और किसी भी अन्य निजी चीज़ के लिए मायने रखता है। और पृष्ठ आपको पहले से बताता है कि पार करना क्या रखता है और क्या नहीं रख सकता, आपको खोजने के लिए छोड़ने के बजाय। XML एक ऐसा विचार रखता है जिसके लिए JSON के पास शब्द नहीं, और उसे समझना आपको आश्चर्यों से बचाएगा। नीचे आपको मिलेगा कि रूपांतरण कैसे काम करता है और क्या अपेक्षा रखें।

रूपांतरण कैसे काम करता है

तत्व कुंजियाँ बनते हैं, नेस्टिंग नेस्टिंग बनती है

आपका XML आपके ब्राउज़र के भीतर पढ़ा जाता है। तत्वों के नाम कुंजियाँ बनते हैं, और तत्वों के भीतर के तत्व ऑब्जेक्ट के भीतर ऑब्जेक्ट बनते हैं, इसलिए XML की नेस्टिंग ही JSON की नेस्टिंग है। जो संरचना आप टैगों में देखते हैं वही आपको कोष्ठकों में मिलती है।

विशेषताएँ @ के साथ अपना नाम रखती हैं

XML तत्व विशेषताएँ रख सकते हैं, आरंभिक टैग के भीतर लिखे डेटा के छोटे टुकड़े। JSON में विशेषताएँ नहीं होतीं, इसलिए हर एक अपनी कुंजी के रूप में रखी जाती है, नाम के आगे @ के साथ। विशेषता id वाले book जैसे तत्व से उसके बच्चों की कुंजियों के बग़ल में कुंजी @id मिलेगी। @ स्पष्ट करता है कि कौन-सी कुंजियाँ विशेषताओं से आईं और कौन-सी तत्वों से।

बच्चे तत्वों के बग़ल में पाठ

जो पाठ बच्चे तत्वों के साथ एक तत्व साझा करता है वह #text के तहत रखा जाता है, क्योंकि और कहीं रखने की जगह नहीं। यह डेटा फ़ाइलों में दुर्लभ है और उन दस्तावेज़ों में आम है जो गद्य को मार्कअप से मिलाते हैं। कुंजी #text पाठ रखती है, और अन्य कुंजियाँ बच्चे।

क्या रखा जाता है

तत्वों के नाम, नेस्टिंग, विशेषताएँ और पाठ

तत्वों के नाम, उनकी नेस्टिंग, उनकी विशेषताएँ और उनका पाठ सब रखे जाते हैं। डेटा की जानकारी JSON में है, ऐसे रूप में जिसमें प्रोग्राम घूम सकते हैं।

जो एक बार आता है उसका क्रम

जब तत्व भिन्न हों तो वे लिखे जाने का क्रम रखते हैं, इसलिए शीर्षक, लेखक और तारीख़ सूचीबद्ध करने वाला रिकॉर्ड उन्हें उसी क्रम में दिखाता है।

पाठ ठीक-ठीक

हर तत्व का पाठ जैसा लिखा गया वैसा रखा जाता है, उसके भीतर के रिक्त स्थानों और उच्चारण चिह्न वाले अक्षरों, प्रतीकों और अन्य लिपियों के वर्णों समेत।

XML को JSON में बदलने से पहले आपको क्या जानना चाहिए

दोहराए नाम ऐरे बन जाते हैं

XML एक ऐसा विचार रखता है जिसके लिए JSON के पास शब्द नहीं: तत्व क्रमबद्ध हैं और दोहराए जा सकते हैं। जो नाम एक बार आता है वह मान बनता है, और जो दो बार आता है वह ऐरे। इसलिए तीन item तत्वों वाली सूची तीन का ऐरे बनती है, पर एक item वाली सूची केवल मान बनती है, एक का ऐरे नहीं। इसका अर्थ है कि परिणाम को वापस पढ़ना हमेशा वही XML नहीं देता। JSON पढ़ने वाले प्रोग्राम को वहाँ दोनों रूपों के लिए तैयार रहना चाहिए जहाँ सूची छोटी हो सकती है।

टिप्पणियाँ, प्रोसेसिंग निर्देश और घोषणा छोड़ दिए जाते हैं

टिप्पणियाँ, प्रोसेसिंग निर्देश और XML घोषणा डेटा का भाग नहीं हैं और साथ नहीं आते। टिप्पणी में डेवलपर का छोड़ा नोट, ऊपर की वह पंक्ति जो संस्करण और एन्कोडिंग बताती है, और किसी विशेष प्रोग्राम के लिए निर्देश ग़ायब हो जाते हैं। डेटा स्वयं बना रहता है।

सब कुछ पाठ है

XML में प्रकार नहीं होते: टैगों में हर मान पाठ है। आपके XML की संख्याएँ, तारीख़ें और झंडे उस पाठ के रूप में पहुँचते हैं जो लिखा गया था। JSON पढ़ने वाले प्रोग्राम को उन्हें अपनी आवश्यकता के अनुसार व्याख्यायित करना चाहिए।

यहाँ XML को JSON में कैसे बदलें

अपनी फ़ाइल जोड़िए

XML फ़ाइल को पृष्ठ पर छोड़िए या अपने उपकरण से चुनिए। वह आपके ब्राउज़र के भीतर पढ़ी जाती है और अपलोड नहीं होती।

बदलिए

बटन दबाइए। साधारण आकार की फ़ाइल में एक पल लगता है। पूरा होने तक पृष्ठ खुला रखिए।

डाउनलोड कीजिए और जाँचिए

JSON डाउनलोड कीजिए और टेक्स्ट एडिटर में खोलिए। शुरुआत और अंत देखिए, और जाँचिए कि कुंजियाँ वे नाम हैं जिनकी आप अपेक्षा रखते हैं और विशेषताएँ अपना @ लिए हैं।

XML और JSON पर क़रीबी नज़र

वृक्ष लिखने के दो तरीक़े

XML और JSON दोनों मानों के वृक्ष का वर्णन करते हैं। XML उसे खुलने और बंद होने वाले टैगों से लिखता है, और विशेषताओं व मिश्रित सामग्री की अनुमति देता है। JSON उसे कोष्ठकों से लिखता है, और केवल ऑब्जेक्ट, सूचियाँ, स्ट्रिंग, संख्याएँ, बूलियन और null जानता है। वे डेटा के लिए, जैसे रिकॉर्ड और सेटिंग, अच्छी तरह मेल खाते हैं, और दस्तावेज़ों के लिए, जैसे वेब पृष्ठ या किताब, जहाँ पाठ और मार्कअप गुँथे होते हैं, ख़राब तरह।

आना-जाना गारंटीशुदा क्यों नहीं है

XML से JSON में जाना थोड़ा खोता है: दोहराए मिश्रित तत्वों का क्रम, टिप्पणियाँ और विशेषता व तत्व के बीच का अंतर, जो केवल @ से रखा जाता है। इसलिए वापस जाने पर आपको ठीक वही XML न मिले। डेटा विनिमय के लिए यह शायद ही मायने रखता है। दस्तावेज़ों के लिए रखता है, और XML को मास्टर के रूप में रखना बेहतर है।

नेमस्पेस

XML नाम उपसर्ग रख सकते हैं जो उन्हें नेमस्पेस में रखता है, जैसे किसी विशेष मानक की शब्दावली। ऐसे नाम जैसे लिखे गए वैसे रखे जाते हैं, उपसर्ग समेत, इसलिए कुंजी dc:title पढ़ी जा सकती है। उन्हें हल या पुनर्लिखित नहीं किया जाता।

आम स्थितियाँ विस्तार से

उत्पाद फ़ीड और सूचीपत्र

आपूर्तिकर्ता और बाज़ार अक्सर XML में फ़ीड देते हैं। उन्हें आधुनिक स्क्रिप्ट में उपयोग करने या JSON लेने वाले मंच में आयात करने के लिए XML को JSON में बदलिए और परिणाम पढ़िए।

पुरानी वेब सेवाएँ

SOAP और शुरुआती API के युग में बनी सेवाएँ XML में उत्तर देती हैं। जो स्क्रिप्ट उनका उत्तर उपयोग करना चाहती है वह JSON के साथ काम कर सकती है, जिसे सँभालना आसान है।

कॉन्फ़िगरेशन और सेटिंग फ़ाइलें

कई प्रोग्राम सेटिंग XML के रूप में संग्रहीत करते हैं। फ़ाइल को JSON में बदलना आपको उसे JSON के लिए बने उपकरण में पढ़ने, दो संस्करणों की तुलना करने या स्क्रिप्ट को खिलाने देता है।

फ़ीड, साइटमैप और निर्यात

समाचार फ़ीड, साइटमैप और लेखा या इन्वेंटरी प्रोग्रामों के निर्यात XML हैं। रूपांतरण आपको ऐसा रूप देता है जिसमें खोजना और कोड में लोड करना आसान है।

XML को JSON में बदलने से पहले व्यावहारिक सलाह

जाँचिए कि XML सुगठित है

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

जानिए सूचियाँ कहाँ छोटी हो सकती हैं

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

तय कीजिए विशेषताओं का क्या करना है

विशेषताएँ @ वाली कुंजियों के रूप में पहुँचती हैं। अगर आपका प्रोग्राम उनसे अन्य नामों की अपेक्षा रखता है, तो रूपांतरण के बाद उनका नाम बदलिए, या प्रोग्राम समायोजित कीजिए।

बड़ी फ़ाइलें

सब कुछ आपके उपकरण पर चलता है, इसलिए बहुत बड़ी फ़ाइल को मेमोरी चाहिए। कई मेगाबाइट की फ़ाइलों के लिए कंप्यूटर उपयोग कीजिए, और अगर पृष्ठ जूझे तो डेटा बाँट दीजिए।

रूपांतरण से पहले लोग जो पूछते हैं

एक सूची ऐरे और दूसरी एकल मान क्यों है?

क्योंकि जो नाम एक बार आता है वह मान बनता है, और जो दो बार आता है वह ऐरे। एक प्रविष्टि वाली सूची एकल मान जैसी दिखती है।

मेरी विशेषताएँ कहाँ गईं?

वे नाम के आगे @ वाली कुंजियाँ हैं, बच्चे तत्वों की कुंजियों के बग़ल में।

अन्य तत्वों के बग़ल का पाठ कहाँ है?

कुंजी #text के तहत, क्योंकि और कहीं रखने की जगह नहीं।

मेरी टिप्पणियाँ क्यों ग़ायब हैं?

टिप्पणियाँ, प्रोसेसिंग निर्देश और XML घोषणा डेटा का भाग नहीं हैं और साथ नहीं आते।

क्या मेरी फ़ाइल अपलोड होती है?

नहीं। रूपांतरण आपके ब्राउज़र में चलता है और फ़ाइल आपके उपकरण से कभी बाहर नहीं जाती।

क्या मैं XML में वापस जा सकता हूँ?

हाँ। JSON से XML वृक्ष को वापस XML में लिखता है, हालाँकि आना-जाना समान होने की गारंटी नहीं।

XML को JSON में बदलते समय समझदारी से चुनाव

JSON, YAML या तालिका?

JSON प्रोग्रामों के अनुकूल है। लोगों द्वारा संपादित कॉन्फ़िगरेशन के लिए JSON से YAML रूपांतरण के बाद अधिक आराम से पढ़ा जाता है। अगर XML वास्तव में एकरूप रिकॉर्डों की तालिका है, तो आप JSON से CSV या JSON से XLSX के साथ आगे बढ़ सकते हैं।

XML रखिए

XML मास्टर है। उसमें टिप्पणियाँ, घोषणा और सटीक क्रम हैं। उसे रखिए, और JSON को सुविधाजनक प्रति मानिए।

उपभोक्ता के बारे में सोचिए

देखिए कि JSON को क्या पढ़ेगा, और काम को उसके अनुकूल ढालिए। निश्चित संरचना की अपेक्षा रखने वाली स्क्रिप्ट लिखना आसान है अगर XML नियमित हो।

रूपांतरण के बाद अच्छा परिणाम पाना

JSON को दर्शक में जाँचिए

परिणाम को ऐसे एडिटर में खोलिए जो JSON समझता है और ऑब्जेक्ट समेटिए। अगर संरचना वैसी दिखे जैसी आप अपेक्षा रखते हैं, तो वह ठोस है।

कुछ रिकॉर्डों की स्रोत से तुलना कीजिए

बीच के कुछ रिकॉर्ड लीजिए और XML से जाँचिए। इसमें एक मिनट लगता है और बताता है कि रूपांतरण वफ़ादार है।

प्रकाशन के लिए छोटा करना

अगर फ़ाइल वेब पृष्ठ द्वारा लोड होगी और बड़ी है, तो ऐसे उपकरण हैं जो रिक्त स्थान हटाकर उसे हल्का बनाते हैं। डेटा वही रहता है।

अपने XML को अच्छे रूपांतरण के लिए तैयार करना

संरचना नियमित रखिए

जब आप XML को JSON में बदलें, तो नियमित डेटा सबसे अच्छा बदलता है: वही तत्व उन्हीं जगहों पर, सूचियाँ हमेशा दोहराए तत्वों के रूप में लिखी। अनियमित फ़ाइलें अनियमित JSON बनाती हैं, और उसे पढ़ने वाले प्रोग्राम को सँभालना पड़ता है।

जहाँ हो सके पाठ और तत्वों को मिलाने से बचिए

बच्चे तत्वों के बग़ल का पाठ #text के तहत जाता है। यह सही है, पर परिणाम को उपयोग करना कठिन बनाता है। डेटा के लिए पाठ को पत्तियों में रखिए, शाखाओं के बीच नहीं।

पहले छोटे टुकड़े से परीक्षण कीजिए

अगर आपकी फ़ाइल बड़ी है, तो पहले के रिकॉर्ड परीक्षण फ़ाइल में लेकर उसे बदलिए। परिणाम पर एक त्वरित नज़र दिखाती है कि आकार वैसा है जैसी आप अपेक्षा रखते हैं या नहीं।

XML को JSON में बदलने के बाद JSON पढ़ना

संरचना में घूमिए, उसका अनुमान मत लगाइए

परिणाम का आकार XML के आकार को प्रतिबिंबित करता है, इसलिए उसे समझने का सबसे अच्छा तरीक़ा दोनों को अगल-बगल खोलना है। मूल तत्व खोजिए, जो शीर्ष-स्तर की कुंजी बनता है, और एक रिकॉर्ड का अनुसरण उसकी पत्तियों तक कीजिए। XML को JSON में बदलने के बाद यह दस मिनट की सैर कोड में घंटों की आज़माइश बचाती है।

सूचियों के लिए रक्षात्मक कोड लिखिए

क्योंकि एकल प्रविष्टि मान है और कई प्रविष्टियाँ ऐरे, सबसे सुरक्षित आदत है जो आप पढ़ें उसे लपेटना: अगर वह ऐरे नहीं, तो उसे एक में रख दीजिए। पाठक की शुरुआत में कोड की एक पंक्ति बाक़ी को सरल बना देती है, और आपका प्रोग्राम उस दिन नहीं टूटता जब फ़ीड में केवल एक उत्पाद हो।

विशेषताओं को सावधानी से सँभालिए

@ से शुरू होने वाली कुंजियाँ विशेषताएँ हैं। कुछ उपकरण ऐसे नाम गुण नामों के रूप में पसंद नहीं करते, इसलिए आप लोड करते समय उनका नाम बदलना पसंद कर सकते हैं। अर्थ वही रहता है; केवल लेबल बदलता है।

स्रोत के विकल्प के रूप में JSON संपादित मत कीजिए

जब डेटा बदले, तो XML को उसके स्रोत पर बदलिए, या प्रणाली से नया निर्यात बनवाइए, और XML को फिर JSON में बदलिए। प्रति संपादित करना दोनों को क़दम से बाहर छोड़ता है।

गोपनीयता और संचालन

डेटा के लिए स्थानीय रूपांतरण क्यों मायने रखता है

XML फ़ाइलें अक्सर निजी चीज़ें रखती हैं: चालान, ग्राहक, ऑर्डर, सेटिंग। कई ऑनलाइन कन्वर्टर आपकी फ़ाइल सर्वर पर अपलोड करते हैं, प्रोसेस करते हैं और परिणाम लौटाते हैं, और कुछ समय के लिए एक प्रति ऐसी मशीन पर रहती है जिसे आप नियंत्रित नहीं करते। यहाँ आपका अपना ब्राउज़र काम करता है, इसलिए डेटा आपके उपकरण पर रहता है।

आपके जाने पर क्या होता है

जब आप पृष्ठ बंद करते हैं, तो बदली हुई फ़ाइल ब्राउज़र से ग़ायब हो जाती है, इसलिए पहले उसे डाउनलोड कीजिए। आपके डेटा के बारे में कुछ नहीं रखा जाता।

अगर कुछ ग़लत हो जाए

पृष्ठ कहता है कि XML वैध नहीं है

हो सकता है कोई टैग बंद न हो, या दो मूल तत्व हों, या ऐसा वर्ण जिसकी XML अनुमति नहीं देता। फ़ाइल को ऐसे एडिटर में खोलिए जो XML त्रुटियाँ उभारता है और जो पंक्ति वह बताए उसे ठीक कीजिए।

संरचना वैसी नहीं जैसी मैंने अपेक्षा की

एक प्रविष्टि वाली सूचियाँ, और विशेषताएँ व मिश्रित पाठ जाँचिए। वे अधिकांश आश्चर्य समझाते हैं।

बड़ी फ़ाइल के साथ पृष्ठ अटक जाता है

सब कुछ आपके उपकरण पर चलता है, और बड़ी फ़ाइल को मेमोरी चाहिए। कंप्यूटर पर फिर कोशिश कीजिए, या डेटा बाँट दीजिए।

संबंधित उपकरण

उपकरणों का वही परिवार पड़ोसी कार्यों को ढकता है। वापस जाने के लिए JSON से XML उपयोग कीजिए। कॉन्फ़िगरेशन फ़ाइलों के लिए JSON से YAML और YAML से JSON उन दोनों के बीच बदलते हैं। तालिकाओं के लिए JSON से CSV, CSV से JSON, JSON से XLSX और XLSX से JSON हैं।

एक हल किया उदाहरण

मान लीजिए कोई आपूर्तिकर्ता आपको 800 उत्पादों वाली XML फ़ाइल के रूप में उत्पाद फ़ीड भेजता है, हर एक में id विशेषता, नाम, मूल्य और श्रेणियों की सूची के साथ। आप फ़ाइल को यहाँ छोड़ते हैं और बटन दबाते हैं। एक पल बाद आप 800 उत्पादों के ऐरे वाला JSON डाउनलोड करते हैं। हर एक का id कुंजी @id है, नाम और मूल्य अपनी कुंजियाँ हैं, और श्रेणियाँ ऐरे बनाती हैं। उन कुछ उत्पादों के लिए जिनकी एक ही श्रेणी है, मान सादी स्ट्रिंग है, और आपकी आयात स्क्रिप्ट दोनों मामले सँभालती है। XML आपूर्तिकर्ता के मूल के रूप में आपके फ़ोल्डर में रहता है।

एक संक्षिप्त जाँच सूची

रूपांतरण से पहले

जाँचिए कि XML सुगठित है। नोट कीजिए कि सूचियाँ कहाँ छोटी हो सकती हैं। XML रखिए।

रूपांतरण करते समय

फ़ाइल तैयार होने तक पृष्ठ पर रहिए।

रूपांतरण के बाद

JSON खोलिए, कुंजियाँ, विशेषताएँ और सूचियाँ जाँचिए, और उसे उस प्रोग्राम से परखिए जो उसे पढ़ेगा।

आम ग़लतियाँ

मान लेना कि हर सूची ऐरे है

एक प्रविष्टि वाली सूची मान बनती है। पढ़ने का कोड दोनों स्वीकार करने के लिए लिखिए।

सटीक आना-जाना की अपेक्षा

XML से JSON और वापस जाने पर वही XML मिलने पर निर्भर मत कीजिए। मूल रखिए।

यह भूलना कि सब मान पाठ हैं

XML में प्रकार नहीं होते। संख्याओं और तारीख़ों को उन्हें उपयोग करने वाले प्रोग्राम में बदलिए।

आपका डेटा आपके उपकरण पर रहता है

रूपांतरण स्थानीय रूप से होता है। आपकी फ़ाइल आपका अपना ब्राउज़र पढ़ता है, वहीं दोबारा लिखता है और JSON के रूप में वापस सौंप देता है। कुछ अपलोड नहीं होता, इसलिए सर्वर पर कोई प्रति नहीं रहती और कोई और उसे पढ़ नहीं सकता। निजी सामग्री वाले डेटा के लिए XML को JSON में बदलने का यह सुरक्षित तरीक़ा है।

सार

यहाँ XML को JSON में बदलने के लिए फ़ाइल छोड़िए और बटन दबाइए। वह आपके ब्राउज़र में पढ़ी और लिखी जाती है, इसलिए फ़ाइल आपके उपकरण से कभी बाहर नहीं जाती। तत्वों के नाम, उनकी नेस्टिंग, उनकी विशेषताएँ और उनका पाठ रखे जाते हैं। विशेषता आगे @ के साथ अपना नाम रखती है, और जो पाठ बच्चे तत्वों के साथ तत्व साझा करता है वह #text के तहत रखा जाता है, क्योंकि और कहीं रखने की जगह नहीं। XML एक ऐसा विचार रखता है जिसके लिए JSON के पास शब्द नहीं: तत्व क्रमबद्ध हैं और दोहराए जा सकते हैं। जो नाम एक बार आता है वह मान बनता है और जो दो बार आता है वह ऐरे, इसलिए परिणाम को वापस पढ़ना हमेशा वही XML नहीं देता। टिप्पणियाँ, प्रोसेसिंग निर्देश और XML घोषणा डेटा का भाग नहीं हैं और साथ नहीं आते।

लंबाई और क्षेत्रफल द्रव्यमान और आयतन तापमान मुद्राएँ