TOML से JSON कन्वर्टर
बाईं ओर TOML पेस्ट करें, दाईं ओर JSON पाएं। टेबल ऑब्जेक्ट बनती हैं, टेबल ऐरे ऐरेज़ बनती हैं — कोई अपलोड नहीं।
- अपना TOML बाएँ टेक्स्ट एरिया में पेस्ट करें।
- "JSON में बदलें" पर क्लिक करें। आउटपुट टेबल नेस्टिंग को बनाए रखने वाला JSON ऑब्जेक्ट है।
- परिणाम कॉपी करें या data.json के रूप में डाउनलोड करें।
- डेटटाइम मान ISO 8601 स्ट्रिंग में बदलते हैं; संख्याओं में अंडरस्कोर हटा दिए जाते हैं।
यह क्या करता है?
TOML 1.0 दस्तावेज़ को JSON ऑब्जेक्ट में पार्स करता है। `[section]` टेबल नेस्टेड ऑब्जेक्ट बनती हैं; `[[items]]` टेबल ऐरे JSON ऐरे बनती हैं। स्ट्रिंग, इन्टीजर (हेक्स/ऑक्टल/बाइनरी लिटरल और अंक-समूहीकरण अंडरस्कोर सहित), फ़्लोट, बूलियन, तारीख, डेटटाइम और समय सभी JSON-समतुल्य प्रतिनिधित्व में मैप होते हैं। इनलाइन टेबल और इनलाइन ऐरे एक ही तरीके से समतल किए जाते हैं।
उदाहरण
TOML इनपुट:
name = "Ada"
active = true
[address]
city = "London" JSON आउटपुट:
{
"name": "Ada",
"active": true,
"address": {
"city": "London"
}
} सामान्य TOML त्रुटियाँ और कैसे ठीक करें
TOML कुछ जगहों पर YAML या JSON से ज़्यादा सख़्त है। नीचे के पैटर्न ज़्यादातर पार्सर विफलताओं को कवर करते हैं।
- बिना कोट की स्ट्रिंग। `name = Ada` अमान्य है — खुले मान कुंजी/बूलियन/संख्या के रूप में व्याख्यायित होते हैं, स्ट्रिंग नहीं। डबल कोट का उपयोग करें: `name = "Ada"`।
- मिश्रित-प्रकार ऐरे (TOML 0.x)। TOML 0.5 ने ऐरे में मिश्रित प्रकार निषिद्ध किए; TOML 1.0 अनुमति देता है। @iarna/toml 1.0 का पालन करता है, इसलिए `[1, "two"]` यहाँ मान्य है। यदि आपका TOML 0.5 टूलिंग के माध्यम से राउंड-ट्रिप करना चाहिए, ऐरे एकसमान रखें।
- टेबल को फिर से परिभाषित करना। `[a]` को दो बार परिभाषित करना त्रुटि है। प्रत्येक टेबल हेडर अधिकतम एक बार दिखना चाहिए। कुंजियों को एकल `[a]` ब्लॉक में मर्ज करें।
- बिना समय क्षेत्र के डेटटाइम। `d = 2026-04-26T12:00:00` (कोई Z या ऑफ़सेट नहीं) "स्थानीय डेटटाइम" है — यह पार्स होता है, पर JSON में स्थानीयता का कोई concept नहीं। आउटपुट वही स्ट्रिंग है दीवार-घड़ी समय के साथ, UTC क्षण नहीं। UTC के लिए `Z` जोड़ें: `d = 2026-04-26T12:00:00Z`।
- ट्रिपल-कोट एस्केप भ्रम। TOML बेसिक मल्टी-लाइन स्ट्रिंग `"""..."""` का उपयोग करती हैं और एस्केप प्रोसेस करती हैं; लिटरल मल्टी-लाइन स्ट्रिंग `\'\'\'...\'\'\'` का उपयोग करती हैं और नहीं। एस्केप नियमों को मिलाना सबसे आम मल्टी-लाइन स्ट्रिंग त्रुटि है।
- इनलाइन टेबल विस्तार। इनलाइन टेबल `point = {x=1, y=2}` बंद और स्व-निहित है — आप बाद में `[point.z]` या `point.z = 3` नहीं लिख सकते। विस्तार के लिए, इसके बजाय मानक `[point]` ब्लॉक सिंटैक्स का उपयोग करें।
अक्सर पूछे जाने वाले प्रश्न
JSON में डेटटाइम कैसे दर्शाए जाते हैं?
JSON में नेटिव डेटटाइम प्रकार नहीं है, इसलिए मान ISO 8601 स्ट्रिंग बन जाते हैं। ऑफ़सेट डेटटाइम (`2026-04-26T12:00:00Z`) और स्थानीय डेटटाइम (`2026-04-26T12:00:00`) दोनों शाब्दिक रूप से स्ट्रिंगिफ़ाई करते हैं — पर केवल ऑफ़सेट रूप JSON में स्पष्ट है।
क्या इन्टीजर अंडरस्कोर सुरक्षित हैं?
नहीं — TOML पठनीयता के लिए `1_000_000` की अनुमति देता है; पार्सर अंडरस्कोर हटा देता है और JSON मान `1000000` होता है। समूहीकरण विशुद्ध रूप से TOML स्रोत-पाठ विशेषता है।
TOML टिप्पणियों का क्या होता है?
वे हटा दी जाती हैं। TOML टिप्पणियाँ `#` से शुरू होती हैं; JSON में कोई टिप्पणी सिंटैक्स नहीं है, इसलिए पार्सर उन्हें छोड़ देता है। यदि आपको उन्हें संरक्षित करने की आवश्यकता है, तो आपको एक भिन्न मध्यवर्ती प्रारूप की आवश्यकता होगी।
क्या टेबल ऐरे समर्थित हैं?
हाँ। `[[products]]` ब्लॉक बार-बार दोहराए जाने पर `products` कुंजी के तहत JSON ऐरे बन जाते हैं। प्रत्येक `[[products]]` हेडर एक नया ऐरे प्रविष्टि शुरू करता है; उसके बाद की कुंजी-मान पंक्तियाँ उस प्रविष्टि को आबाद करती हैं।
क्या मैं वास्तव में बड़ी TOML फ़ाइलें बदल सकता हूँ?
टेक्स्ट एरिया धीमा होने से पहले लगभग 30 MB तक। बहुत बड़ी TOML फ़ाइलें दुर्लभ हैं — अधिकांश कॉन्फ़िग फ़ाइलें 1 MB से काफ़ी कम होती हैं।
क्या मेरा TOML अपलोड होता है?
नहीं। सब कुछ आपके ब्राउज़र में चलता है — आपका डेटा इस पेज के JavaScript द्वारा पार्स होता है और कभी किसी सर्वर पर नहीं भेजा जाता।