कॉन्फ़िग कन्वर्टर
एक कॉन्फ़िग फ़ॉर्मेट पेस्ट करें, टाइप करते ही बाक़ी दो पाएँ।
इसका उपयोग कैसे करें
- अपना कॉन्फ़िग पेस्ट करें — YAML, JSON या Java .properties। फ़ॉर्मेट पहचाना जाता है और टाइप करते ही बाक़ी दो नीचे दिखते हैं; दबाने के लिए कोई बटन नहीं।
- अगर अनुमान ग़लत हो, तो स्रोत फ़ॉर्मेट खुद चुनें। 2 या 4 स्पेस का इंडेंटेशन चुनें, और Spring-शैली की कुंजियाँ सपाट रखने के लिए “डॉट वाली कुंजियाँ खोलें” बंद करें।
- हर परिणाम अलग से कॉपी या डाउनलोड करें — फ़ाइल नाम config.yaml, config.json और config.properties हैं।
उदाहरण
इनपुट (YAML)
server: port: 8080 name: order-service debug: true
JSON और Properties
{
"server": {
"port": 8080,
"name": "order-service"
},
"debug": true
}
Properties
----------
server.port = 8080
server.name = order-service
debug = trueसिर्फ़ डिफ़ॉल्ट नियम: स्रोत YAML पहचाना गया, इसलिए 8080 संख्या और true बूलियन बना रहता है। Properties में टाइप नहीं होते, इसलिए वही मान स्ट्रिंग 8080 और true के रूप में आते हैं — जब स्रोत .properties हो तो सब कुछ आख़िर तक स्ट्रिंग ही रहता है।
नियम, सीमाएँ और ज्ञात समस्याएँ
- सिर्फ़ तीन फ़ॉर्मेट: YAML, JSON और Java .properties। कोई TOML नहीं, कोई INI [section] हेडर नहीं, कोई XML या CSV नहीं।
- YAML कॉन्फ़िग-सबसेट के रूप में समर्थित है: ब्लॉक मैपिंग, सीक्वेंस, फ़्लो {…} / […], कोटेड स्केलर और | / > ब्लॉक स्केलर। एंकर (&), उपनाम (*), !tags, << मर्ज कुंजियाँ और ? जटिल कुंजियाँ अनुमान लगाने के बजाय त्रुटि बताई जाती हैं।
- सिर्फ़ पहला YAML दस्तावेज़ कन्वर्ट होता है; बाद वाला --- नज़रअंदाज़ होता है और उसकी सूचना दी जाती है।
- कमेंट आगे नहीं ले जाए जाते: तीनों फ़ॉर्मेट उन्हें अलग जगह रखते हैं, इसलिए ग़लत जगह पर बचा कमेंट कमेंट न होने से बुरा है।
- Properties में टाइप नहीं होते। हर मान स्ट्रिंग है, इसलिए port = 8080 JSON में "8080" बनता है — 8080 नहीं। संख्याएँ, बूलियन और null सिर्फ़ तब बचते हैं जब स्रोत YAML या JSON हो।
- गैर-ASCII टेक्स्ट जैसा है वैसा (UTF-8) लिखा जाता है, \uXXXX के रूप में एस्केप नहीं। Java का Properties.store() ISO-8859-1 लिखता है, इसलिए Java प्रोजेक्ट में पेस्ट करना हो तो फ़ाइल UTF-8 में सहेजें।
- सुरक्षित सीमा से बड़ी पूर्ण संख्याएँ (जैसे 12345678901234567890) संख्या में राउंड होने के बजाय आपके लिखे ठीक अंकों के साथ स्ट्रिंग के रूप में रखी जाती हैं।
- कुंजियों का क्रम आपके इनपुट का पालन करता है; कोई सॉर्टिंग विकल्प नहीं।
- सबसे ऊपरी ऐरे या अकेला मान properties के रूप में नहीं लिखा जा सकता — वह एक पैनल यह बताता है, दूसरा फिर भी कन्वर्ट करता है।
- कोई फ़ाइल अपलोड नहीं, कोई URL पैरामीटर नहीं, कोई इतिहास नहीं। सब कुछ आपके ब्राउज़र में चलता है: कुछ भी अपलोड या संग्रहीत नहीं होता।
- लाइन ब्रेक वाली स्ट्रिंग YAML में "a\nb" के रूप में लिखी जाती है, | ब्लॉक स्केलर के रूप में नहीं।
- सीमाएँ: 1,000,000 कैरेक्टर और 64 स्तर की नेस्टिंग — किसी एक से ऊपर जाने पर कटा परिणाम नहीं, त्रुटि मिलती है। 200,000 कैरेक्टर से ऊपर परिणाम टाइप करना रोकने के लगभग 0.6 सेकंड बाद अपडेट होता है; आउटपुट LF इस्तेमाल करता है और अंत में नया लाइन ब्रेक नहीं होता।
संबंधित टूल
कॉन्फ़िग सही फ़ॉर्मेट में आ जाने के बाद लोग आमतौर पर यह चाहते हैं।