INI से JSON कन्वर्टर
आपके ब्राउज़र में INI कॉन्फ़िग को JSON में और JSON को वापस INI में बदलें। सेक्शन, कमेंट, और ग्लोबल कीज़ सभी संभाले जाते हैं। आपका डेटा स्थानीय रहता है।
INI से JSON कन्वर्टर पूरी तरह आपके ब्राउज़र में चलता है। आपकी पेस्ट की गई INI और JSON कॉन्फ़िग स्थानीय रूप से पार्स होती है और कभी आपके डिवाइस से बाहर नहीं जाती या ArrayKit पर अपलोड नहीं होती।
JSON फॉर्मैटर खोलें
INI से JSON कन्वर्टर के बारे में
INI से JSON कन्वर्टर एक क्लासिक INI कॉन्फ़िग फ़ाइल पढ़ता है और उसे साफ़, संरचित JSON में बदल देता है, फिर JSON को सीधे वापस INI में बदलता है। यह [section] हेडर, key=value प्रविष्टियाँ, शीर्ष स्तर पर सेक्शन-रहित ग्लोबल कीज़, और ';' या '#' से शुरू होने वाली कमेंट लाइनें समझता है, जिन्हें यह चुपचाप छोड़ देता है। संख्याएँ और बूलियन डिफ़ॉल्ट रूप से समायोजित होते हैं ताकि port=5432 एक असली संख्या बन जाए और enabled=true एक असली बूलियन बन जाए, या आप हर मान को एक स्ट्रिंग के रूप में रख सकते हैं। दूसरी दिशा में, शीर्ष-स्तरीय स्केलर ग्लोबल कीज़ बन जाते हैं और नेस्टेड JSON ऑब्जेक्ट नामित [sections] बन जाते हैं। यह तब काम आता है जब आप लीगेसी टूलिंग कॉन्फ़िग माइग्रेट कर रहे हों, INI सेटिंग्स को एक JSON-आधारित पाइपलाइन में जोड़ रहे हों, या एक साझा आकार में दो कॉन्फ़िग को diff कर रहे हों। सब कुछ आपके डिवाइस पर चलता है — आपकी कॉन्फ़िग कभी ब्राउज़र से बाहर नहीं जाती।
विशेषताएँ
- द्वि-मार्गी रूपांतरण: INI से JSON और JSON वापस INI में
- [section] हेडर को नेस्टेड JSON ऑब्जेक्ट में पार्स करता है
- सेक्शन-रहित कीज़ को ग्लोबल शीर्ष-स्तरीय JSON प्रविष्टियों के रूप में रखता है
- ';' और '#' कमेंट लाइनें स्वतः छोड़ता है
- वैकल्पिक प्रकार समायोजन संख्याओं और बूलियन को असली JSON मानों में बदलता है
- JSON ऑब्जेक्ट नामित [sections] बन जाते हैं; स्केलर ग्लोबल कीज़ बन जाते हैं
- बिना बंद किए सेक्शन या विकृत लाइनों के लिए स्पष्ट लाइन-क्रमांकित त्रुटियाँ
- पूरी तरह आपके ब्राउज़र में चलता है, कुछ भी अपलोड नहीं होता
INI से JSON कन्वर्टर का उपयोग कैसे करें
- INI → JSON दिशा चुनें (या JSON → INI पर स्विच करें)
- अपना INI कॉन्फ़िग या JSON इनपुट बॉक्स में पेस्ट करें
- यदि आप स्ट्रिंग के बजाय संख्याएँ और बूलियन चाहते हैं तो Coerce types टॉगल करें
- बदला गया आउटपुट कॉपी करें या इसे एक .json या .ini फ़ाइल के रूप में डाउनलोड करें
उदाहरण
इनपुट
name = ArrayKit
[database]
host = localhost
port = 5432
enabled = true
आउटपुट
{
"name": "ArrayKit",
"database": {
"host": "localhost",
"port": 5432,
"enabled": true
}
}
एक ग्लोबल की और एक [database] सेक्शन एक शीर्ष-स्तरीय फ़ील्ड और एक नेस्टेड ऑब्जेक्ट बन जाते हैं।
सामान्य त्रुटियाँ और समस्या निवारण
- एक लाइन 'Expected "key = value"' बताती है। — हर ग़ैर-कमेंट, ग़ैर-सेक्शन लाइन में '=' (या ':') होना चाहिए। सेपरेटर जोड़ें, या लाइन को कमेंट बनाने के लिए इसके आगे ';' लगाएँ।
- एक [section] लाइन पर 'Unclosed section header'। — छूटा हुआ ']' जोड़ें ताकि हेडर [database] जैसा पढ़े। सेक्शन नाम कई लाइनों में नहीं फैल सकते।
- port एक संख्या के बजाय स्ट्रिंग "5432" बन जाता है। — Coerce types चालू करें ताकि नंगे संख्यात्मक और true/false मान असली JSON संख्याओं और बूलियन के रूप में पार्स हों।
- JSON → INI बताता है कि इसे शीर्ष स्तर पर एक ऑब्जेक्ट चाहिए। — INI में कोई शीर्ष-स्तरीय ऐरे नहीं होता, इसलिए अपने डेटा को एक ऑब्जेक्ट में लपेटें। एक शीर्ष-स्तरीय ऐरे या प्रिमिटिव सेक्शन और कीज़ में मैप नहीं हो सकता।
अक्सर पूछे जाने वाले प्रश्न
- कन्वर्टर INI सेक्शन को JSON में कैसे मैप करता है?
- हर [section] हेडर सेक्शन नाम से कीड एक नेस्टेड JSON ऑब्जेक्ट बन जाता है, और उसके नीचे की key=value लाइनें उस ऑब्जेक्ट की फ़ील्ड बन जाती हैं। एक ही नाम वाले डुप्लिकेट हेडर एक ऑब्जेक्ट में विलय हो जाते हैं।
- किसी भी [section] से पहले दिखाई देने वाली कीज़ का क्या होता है?
- पहले सेक्शन हेडर से पहले लिखी गई कीज़ ग्लोबल होती हैं। उन्हें सेक्शन ऑब्जेक्ट के साथ JSON ऑब्जेक्ट के शीर्ष स्तर पर रखा जाता है, इसलिए कुछ भी नहीं खोता।
- क्या ';' और '#' कमेंट JSON आउटपुट में रखे जाते हैं?
- नहीं। ';' या '#' से शुरू होने वाली लाइनें पूर्ण-लाइन कमेंट के रूप में मानी जाती हैं और INI → JSON रूपांतरण के दौरान छोड़ दी जाती हैं, इसलिए वे कभी JSON में नहीं दिखतीं। एक मान के बाद का इनलाइन टेक्स्ट उस मान का हिस्सा रखा जाता है।
- JSON → INI कैसे तय करता है कि क्या एक सेक्शन बनता है?
- शीर्ष-स्तरीय स्केलर मान पहले उत्सर्जित ग्लोबल key=value लाइनें बन जाते हैं, और हर शीर्ष-स्तरीय नेस्टेड ऑब्जेक्ट एक नामित [section] बन जाता है। नेस्टेड ऐरे या गहरे ऑब्जेक्ट एक JSON-एन्कोडेड, कोटेड मान के रूप में लिखे जाते हैं।
- क्या मैं कन्वर्टर को मानों को संख्याओं या बूलियन में बदलने से रोक सकता हूँ?
- हाँ। Coerce types बंद करें और हर INI मान एक स्ट्रिंग के रूप में रखा जाता है, इसलिए port=5432 JSON में "5432" रहता है और enabled=true "true" रहता है।
- क्या इसे बदलने के लिए मेरी INI या JSON कॉन्फ़िग अपलोड होती है?
- नहीं। INI से JSON कन्वर्टर स्थानीय JavaScript का उपयोग करके आपके ब्राउज़र में सब कुछ पार्स और पुनर्निर्मित करता है। आपकी पेस्ट की गई कॉन्फ़िग कभी आपके डिवाइस से बाहर नहीं जाती और ArrayKit पर नहीं भेजी जाती।
संबंधित टूल
- TOML Formatter और Converter — TOML को फ़ॉर्मैट करें और उसे JSON से और में बदलें।
- YAML ↔ JSON — YAML को JSON में और वापस कन्वर्ट करें।
- dotenv से JSON — एक .env फ़ाइल को JSON ऑब्जेक्ट में और JSON को वापस .env में बदलें।
- JSON फ़ॉर्मेटर — त्रुटि की स्थिति के साथ JSON को सुंदर बनाएँ, छोटा करें और वैलिडेट करें।
- logfmt से JSON — logfmt key=value लॉग को JSON में और वापस बदलें, quoted मानों और type coercion के साथ।
- XML फ़ॉर्मेटर — XML को सुंदर बनाएँ, छोटा करें और वैलिडेट करें, और XML ↔ JSON कन्वर्ट करें।
सभी ArrayKit टूल