CSV ⇄ JSON
कोई भी फ़ॉर्मेट पेस्ट करें — दूसरा टाइप करते ही दिखता है, दोनों दिशाओं में।
इसका उपयोग कैसे करें
- बॉक्स में CSV (या TSV / सेमीकोलन से अलग टेक्स्ट) या JSON ऐरे पेस्ट करें — परिणाम टाइप करते ही बनता है, दबाने के लिए कोई बटन नहीं। दिशा पहले कैरेक्टर से पहचानी जाती है और परिणाम के ऊपर दिखती है, ताकि आप उसे जाँच सकें।
- अगर दिशा गलत अनुमान लगी हो, तो CSV → JSON या JSON → CSV चुनें। अगर सब कुछ एक ही कॉलम में आ जाए, तो डिलिमिटर को “ऑटो” से अपने कैरेक्टर पर ले जाएँ। जब फ़ाइल डेटा से शुरू हो तो “पहली पंक्ति हेडर है” बंद करें — तब आपको ऑब्जेक्ट के बजाय ऐरे का ऐरे मिलता है।
- परिणाम कॉपी या डाउनलोड करें। दोनों में ठीक वही टेक्स्ट होता है जो स्क्रीन पर दिखता है; फ़ाइल का नाम data.json या data.csv होता है। “नमूना लोड करें” सक्रिय दिशा के लिए उदाहरण भर देता है।
उदाहरण
इनपुट (CSV)
order_id,customer,note,zip,amount,shipped 1001,"शर्मा, अनन्या",रिफ़ंड माँगा,00501,89.90,true 1002,बेन कार्टर,,10001,42.00,false
आउटपुट (JSON)
[ { "order_id": 1001, "customer": "शर्मा, अनन्या", "note": "रिफ़ंड माँगा", "zip": "00501", "amount": 89.9, "shipped": true }, { "order_id": 1002, "customer": "बेन कार्टर", "note": "", "zip": 10001, "amount": 42, "shipped": false } ]
उस आउटपुट में चार चीज़ें जाँचें: “शर्मा, अनन्या” के भीतर का कॉमा पंक्ति को बाँटने के बजाय मान के अंदर रहा; zip 00501 का अग्रणी शून्य बचा क्योंकि वरना वह 501 बन जाता; 10001 संख्या बन गया, इसलिए zip कॉलम में मिश्रित प्रकार आ गए — हर मान स्ट्रिंग रखने के लिए “संख्याएँ और बूलियन पहचानें” बंद करें; और 89.90 से 89.9 बना, क्योंकि JSON संख्या अंत का शून्य नहीं रख सकती।
नियम, सीमाएँ और ज्ञात समस्याएँ
- कोई फ़ाइल अपलोड, ड्रैग-एंड-ड्रॉप या URL से लाना नहीं: टेक्स्ट पेस्ट करें। ड्रॉप ज़ोन परिणाम की ज़रूरी ऊँचाई खा जाता, और फ़ाइलें ठीक से पढ़ने का मतलब गैर-UTF-8 एन्कोडिंग संभालना है — CSV व्यूअर पहले से यह करता है (GB18030, Big5, Windows-1256), इसलिए फ़ाइल वहाँ खोलकर टेक्स्ट कॉपी करें।
- इनपुट 1,000,000 अक्षरों तक सीमित है; 200,000 से अधिक पर परिणाम तब तक रुकता है जब तक आप टाइप करना न रोकें और यह बताता है। कड़ी सीमा से ऊपर स्पष्ट त्रुटि मिलती है — इनपुट कभी चुपचाप नहीं काटा जाता।
- प्रकार की पहचान प्रति सेल और रूढ़िवादी है: केवल true / false / null (सिर्फ़ छोटे अक्षरों में) और सख़्त JSON संख्याएँ बदली जाती हैं। अग्रणी शून्य वाले पूर्णांक (00501) और 16 अंक या अधिक की संख्याएँ (लंबे ID) हमेशा स्ट्रिंग रहती हैं, और खाली सेल null बनने के बजाय "" रहती हैं।
- JSON संख्या अंत के शून्य नहीं रख सकती, इसलिए 89.90 से 89.9 और 42.00 से 42 बनता है। हर मान ठीक वैसा रखने के लिए “संख्याएँ और बूलियन पहचानें” बंद करें।
- कॉलम संख्या सबसे चौड़ी पंक्ति के बराबर है, इसलिए कोई फ़ील्ड कभी नहीं गिरता: छोटी पंक्तियाँ खाली स्ट्रिंग से भर दी जाती हैं और अतिरिक्त फ़ील्ड को अपने आप नाम मिलता है। जो पंक्तियाँ पहली पंक्ति से मेल नहीं खातीं, वे नंबर सहित सूचीबद्ध होती हैं।
- डुप्लीकेट कॉलम नाम एक-दूसरे को ओवरराइट करने के बजाय _2, _3 … के साथ बदले जाते हैं — ओवरराइट करने से पूरा कॉलम चुपचाप खो जाता। गायब या खाली हेडर सेल column_N बन जाती हैं। ये नाम मशीन-पठनीय हैं और हर इंटरफ़ेस भाषा में एक जैसे रहते हैं।
- JSON → CSV ऑब्जेक्ट का ऐरे (मुख्य मामला), ऐरे का ऐरे (स्थिति के अनुसार कॉलम), एक अकेला ऑब्जेक्ट और सादे मानों का ऐरे (एक “value” कॉलम) स्वीकार करता है। इसके अलावा — शीर्ष स्तर का अकेला मान, या ऑब्जेक्ट के साथ दूसरे मान मिलाने वाला ऐरे — पंक्ति और कॉलम बताकर अस्वीकार होता है, अनुमान नहीं लगाया जाता।
- नेस्टेड ऑब्जेक्ट डिफ़ॉल्ट रूप से डॉट वाली कुंजियों (address.city) में फ़्लैटन होते हैं; ऐरे कभी फ़्लैटन नहीं होते, वे सेल के भीतर कॉम्पैक्ट JSON के रूप में लिखे जाते हैं। नेस्टेड ऑब्जेक्ट को JSON के रूप में रखने के लिए फ़्लैटन बंद करें। null खाली सेल बनता है।
- JSON सख़्ती से पार्स होता है: कोई कमेंट नहीं, कोई अतिरिक्त कॉमा नहीं, कोई सिंगल कोट नहीं, कोई बिना एस्केप कंट्रोल कैरेक्टर नहीं, नेस्टिंग 64 स्तरों तक। हर पंक्ति पर एक ऑब्जेक्ट (JSON Lines) स्वीकार नहीं है — पहले ऑब्जेक्ट को ऐरे में लपेटें।
- CSV उदार पक्ष है: बंद न हुआ कोट टेक्स्ट के अंत तक माना जाता है और उसकी पंक्ति का नाम बताया जाता है, खाली पंक्तियाँ छोड़ी और गिनी जाती हैं, और गलत फ़ील्ड संख्या वाली पंक्ति सूचीबद्ध होती है। कठोर त्रुटियाँ केवल JSON पक्ष देता है।
- आउटपुट CSV CRLF लाइन एंडिंग और बिना बाइट-ऑर्डर मार्क के लिखा जाता है, और यह वही है जो आप कॉपी करते हैं। अगर गैर-लैटिन CSV को डबल-क्लिक करने पर Excel में गड़बड़ दिखे, तो उसे Data → From Text/CSV से इम्पोर्ट करें और UTF-8 चुनें।
- दायरे से बाहर: .xlsx, आर्काइव, कई फ़ाइलें, JSON Lines, YAML/XML/SQL/Excel एक्सपोर्ट, सॉर्टिंग, फ़िल्टरिंग, कॉलम चुनना और डुप्लीकेट हटाना — CSV व्यूअर और कॉन्फ़िग कन्वर्टर ये कवर करते हैं। कुछ अपलोड, संग्रहीत या URL में नहीं जाता।
संबंधित टूल
डेटा दूसरे फ़ॉर्मेट में आ जाने के बाद लोगों को आमतौर पर क्या चाहिए।