INI को XML में बदलें

यहाँ आप INI को XML में बदलते हैं, मुफ़्त और बिना खाते के: फ़ाइल ऊपर छोड़िए और कुछ ही सेकंड में नतीजा डाउनलोड के लिए तैयार मिलेगा। कन्वर्ज़न आपके अपने ब्राउज़र के भीतर होता है, इसलिए फ़ाइल कभी अपलोड नहीं होती। यह Windows, macOS और Linux पर वैसे ही चलता है जैसे iPhone और Android पर, और कनेक्शन काट देने पर भी चलता रहता है।

  • कहाँ चलता है आपके ब्राउज़र में। फ़ाइल कभी अपलोड नहीं होती।
  • बिना नुक़सान कुछ नहीं छोड़ा जाता। INI में जो था, XML में ठीक वही रहता है।
  • फ़ाइल आकार की सीमा हर फ़ाइल 100 MB तक, मुफ़्त, बिना खाते के।

एक बार में 100 फ़ाइलें। फ़ॉर्मेट अलग-अलग हों तो भी चलेगा।

एक बार XML बनने पर INI फ़ाइल कैसी दिखती है

यह mapping इतनी सीधी है कि पहले से बताई जा सकती है। एक section header एक element बनता है, उसके नीचे हर key उसकी child element बनती है, और value वह element text बनती है।

यह अनुमान लगाने लायक़ी ही इस जोड़ी को किसी टूल के हक़दार बनाती है, बजाय script के। INI फ़ाइल किसी कन्वर्टर को समझने के लिए लगभग कुछ नहीं देती — एक level की grouping, एक key, एक value प्रति लाइन।

क्या आपकी INI को अपना root element मिलेगा

XML को ठीक एक बाहरी element चाहिए और INI फ़ाइल के पास इसकी कोई अवधारणा नहीं। Converter इसे इस तरह हल करता है — अगर फ़ाइल में सिर्फ़ एक section था और कुछ नहीं, वह section root बन जाता है।

कुछ और भी हो तो एक generic root element में लपेटा जाता है। यह उस पल जानना ज़रूरी है जब आप नतीजे के ख़िलाफ़ कोई XSD या XPath लिखें — दूसरा section जोड़ने से root चुपचाप settings से root में बदल जाता है।

हर INI value element text बनकर पहुँचती है, अंदाज़े से typed

INI में बिल्कुल कोई type system नहीं है — equals sign के दाईं तरफ़ जो कुछ है वह अक्षर हैं। Reader फिर भी अंदाज़ा लगाता है, true और false को boolean बनाता है और जो संख्या जैसा parse होता है उसे संख्या बनाता है।

कुछ के लिए यह ग़लत भी होता है। 007 लिखी value 7 पढ़ी जाती है और 7 के रूप में वापस लिखी जाती है। 0x1F लिखा hexadecimal mask 31 बनकर निकलता है। जो कुछ किसी इकाई के साथ है वह बरक़रार रहता है — 128M वैसा ही रहता है।

वे keys जो legal XML element नाम नहीं हैं

XML नामों को लेकर INI से कहीं ज़्यादा सख़्त है। किसी INI key में space, slash या brackets हो सकते हैं; element नाम में अक्षर, अंक, underscore, hyphen और full stop के अलावा लगभग कुछ नहीं हो सकता।

Writer इसलिए हर वह character underscore से बदल देता है जो इस्तेमाल नहीं कर सकता, और किसी अंक से शुरू होने वाले नाम के आगे underscore जोड़ता है। यह बदलाव उलटा नहीं है, इसलिए दो अलग keys एक ही element नाम में मिल सकती हैं।

Dotted section नाम, और [tool.black] एक ही tag क्यों रहता है

किसी [database.pool] जैसे section header को nest होना चाहिए ऐसा दिखता है, और TOML में यह होता। यहाँ नहीं होता — reader brackets के बीच सब कुछ एक ही section नाम मानता है।

अगर लक्ष्य schema को असली nesting चाहिए, वह structure रूपांतरण से नहीं बनना चाहिए — इसे बाद में XSLT से या हाथ से फिर से बनाना होगा।

दोहराया INI section header चुपचाप क्या ले लेता है

INI का कोई मानक नहीं, सिर्फ़ परंपराएँ हैं, और यह reader दोहराए section को merge नहीं करता — यह हर बार एक नई ख़ाली section बनाता है, इसलिए दो बार आई [logging] सिर्फ़ दूसरी घटना की keys रखती है, बिना कोई त्रुटि दिए।

यह विफलता ख़ामोश है और नतीजा पूरी तरह valid XML दस्तावेज़ है जिसमें बस कुछ settings छूट गई हों। बदलने से पहले स्रोत में duplicate headers ढूँढ लीजिए।

INI फ़ाइल की comment वही हिस्सा है जो खो जाता है

दोनों फ़ॉर्मेट comments सँभालते हैं। INI इन्हें semicolon या hash से चिह्नित करता है, XML angle-bracket block से, और यह रूपांतरण इनमें से किसी को पार नहीं करता।

किसी configuration फ़ाइल पर यह सुनने से ज़्यादा मायने रखता है। किसी timeout के ऊपर की लाइन जो बताती है वह 90 सेकंड पर क्यों सेट है, अक्सर उस फ़ैसले का एकमात्र रिकॉर्ड होता है।

XML वह क्या देता है जो INI फ़ाइल कभी नहीं दे सकती थी

इसे बदलने की वजह लगभग कभी syntax नहीं होती। XML 1.0 1998 से W3C recommendation है, और इसके इर्द-गिर्द वह machinery है जो INI के पास कभी नहीं थी — XSD schemas, XPath, XSLT, XML digital signatures।

इनमें से कुछ भी रूपांतरण के साथ नहीं आता। आउटपुट एक well-formed दस्तावेज़ है, बिना attached schema के — schema लिखना असली काम है।

INI फ़ाइल को कब वहीं छोड़ दें

अगर फ़ाइल पढ़ने वाला application वही है जिसने इसे लिखा, और किसी downstream को schema नहीं चाहिए, बदलना बिना किसी फ़ायदे की क़ीमत है। INI फ़ाइल किसी को भी edit करने देती है जो Notepad खोल सकता है।

यह रूपांतरण तब भी ग़लत टूल है जब असल में सिर्फ़ दो-तीन values चाहिए, पूरी फ़ाइल नहीं। उन्हें सीधे पढ़ लीजिए। यह converter उस मामले के लिए है जहाँ INI फ़ाइल ही config है और config कहीं और जा रहा है।

INI को XML में ऐसे बदलें

  1. अपनी INI फ़ाइल इस पेज पर छोड़ें, या चुनने के लिए दबाएँ।
  2. लक्ष्य के रूप में XML चुनें। कन्वर्ज़न आपके ब्राउज़र में होता है और फ़ाइल अपलोड नहीं होती।
  3. तैयार XML फ़ाइल डाउनलोड कर लें।

INI या XML: क्या बदलता है

INI और XML की तुलना
INIXML
पूरा नामINI कॉन्फ़िगरेशनExtensible Markup Language
फ़ाइल एक्सटेंशन.ini, .cfg, .conf.xml
मीडिया टाइपtext/plainapplication/xml
पहली बार प्रकाशित19851998
प्रकाशकW3C
विनिर्देशXML 1.0
लाइसेंसखुला मानकखुला मानक
आज की स्थितिपुराना, फिर भी हर जगह पढ़ा जाता हैमौजूदा
ब्राउज़र में खुलता हैकोई ब्राउज़र नहींहर ब्राउज़र
इसकी जगह विचारणीयTOML, YAMLJSON, YAML

क्या बचा रहता है

टिप्पणियाँ साथ जाती हैं। INI और XML — दोनों में टिप्पणी की वाक्य-रचना है, इसलिए बाद में फ़ाइल सँभालने वाले के लिए छोड़े गए नोट चुपचाप ग़ायब नहीं होते।

नतीजा खोलना

XML को हर मौजूदा ब्राउज़र खोल लेता है। INI को इतने भी नहीं। अगर फ़ाइल किसी वेब पेज या किसी फ़ॉर्म तक जा रही है, तो आम तौर पर इस कन्वर्ज़न की पूरी वजह यही है।

INI 1985 का है और अब मुश्किल से ही इस्तेमाल होता है। XML वह है जो आज के प्रोग्राम लिखते हैं, इसलिए यह कन्वर्ज़न पढ़े जाते रहने का भी सवाल है।

Visual Studio Code INI और XML — दोनों पढ़ लेता है, इसलिए आप नतीजे को असली फ़ाइल के बग़ल में रखकर देख सकते हैं, बिना दूसरा प्रोग्राम खोले।

कौन-सा फ़ॉर्मेट किस काम के लिए है

दोनों का निशाना अलग काम है: INI का एडिटिंग पर, XML का प्रोग्रामों के बीच डेटा ले जाना पर। इस पर सोचना बनता है, क्योंकि जिस वजह से एक मौजूद है, आम तौर पर उसी वजह से दूसरा असुविधाजनक होता है।

XML W3C का है और 1998 से चला आ रहा है, और XML 1.0 में तय किया गया है। Visual Studio Code और oXygen XML Editor इस फ़ॉर्मेट को पढ़ लेते है।

INI से XML: आम सवाल

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

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

क्या INI को XML में बदलना मुफ़्त है?

हाँ। न खाता, न वॉटरमार्क, और न कोई रोज़ का कोटा जो ख़त्म हो: यह आपकी अपनी मशीन पर चलता है, इसलिए आप जितनी बार चाहें लौट सकते हैं। ब्राउज़र 100 MB तक की फ़ाइलें सँभालता है, एक बार में 100।

INI को XML में बदलने पर क्या गुणवत्ता जाती है?

नहीं। XML वही सामग्री बिना कुछ फेंके सँभालता है: नतीजा गुणवत्ता में असली फ़ाइल जैसा ही होता है।

XML फ़ाइल खोलने के लिए क्या मुझे कुछ इंस्टॉल करना होगा?

कन्वर्ज़न के लिए नहीं: वह उसी ब्राउज़र में होता है जो आपने पहले से खोल रखा है। नतीजा खोलने के लिए उसके बाद वही प्रोग्राम चाहिए जिससे आपका डिवाइस Extensible Markup Language आम तौर पर दिखाता है।

इन फ़ॉर्मेट के बारे में और