CSV to JSON रूपांतरण क्या है?
CSV (Comma-Separated Values, RFC 4180) एक समतल, सारणीबद्ध टेक्स्ट प्रारूप है; JSON (JavaScript Object Notation, RFC 8259) संरचित डेटा के लिए एक वृक्ष-आकार वाला टेक्स्ट प्रारूप है। CSV को JSON में बदलने से स्प्रेडशीट-अनुकूल तालिका API-अनुकूल ऑब्जेक्ट्स के ऐरे में बदल जाती है — प्रत्येक पंक्ति के लिए एक ऑब्जेक्ट, हेडर पंक्ति कुंजियाँ प्रदान करती है — बिना किसी सेल को दोबारा टाइप किए।
CSV to JSON रूपांतरण कैसे काम करता है?
हर रूपांतरण आपके ब्राउज़र में स्थानीय रूप से चलता है। मुख्य चरण इस प्रकार हैं:
- आप CSV इनपुट पेन में पेस्ट करते हैं और CONVERT दबाते हैं; टूल टेक्स्ट पार्स करता है और आउटपुट पेन में JSON ऑब्जेक्ट्स का ऐरे भेजता है।
- एक वर्ण-दर-वर्ण स्टेट मशीन (FIELD_START → IN_UNQUOTED_FIELD या IN_QUOTED_FIELD) इनपुट पर चलती है,
""उद्धरित-उद्धरण एस्केप का सम्मान करती है,\r\nऔर\nदोनों को पंक्ति-अंत के रूप में पहचानती है, और मध्यवर्ती प्रतिनिधित्व के रूप में स्ट्रिंग्स की 2-D ऐरे उत्पन्न करती है। - यदि पहली पंक्ति हेडर है, तो उसकी कोशिकाएँ ऑब्जेक्ट कुंजियाँ बन जाती हैं; अन्यथा टूल सिंथेटिक
field0,field1, … कुंजियाँ बनाता है ताकि प्रत्येक पंक्ति एक पूर्ण ऑब्जेक्ट पर मैप हो। - सीमांकक (कॉमा, सेमीकोलन, टैब, पाइप या स्वतः-पहचान) और टाइप कोअर्शन (संख्या / बूलियन /
null) कॉन्फ़िगर किए जा सकते हैं। कोअर्शन चालू रहने पर30संख्या 30 औरtrueबूलियन बनता है; बंद रहने पर हर सेल स्ट्रिंग रहती है। - आउटपुट केवल-पढ़ने योग्य टेक्स्टएरिया में
JSON.stringify-स्वरूपित टेक्स्ट के रूप में लिखा जाता है, और डाउनलोड लिंकapplication/json;charset=utf-8MIME प्रकार के साथ एकBlobबनाता है ताकि आप एक क्लिक में परिणाम सहेज सकें।
इस टूल से CSV को JSON में क्यों रूपांतरित करें?
- गोपनीयता: हर पार्स और रूपांतरण पास आपके ब्राउज़र में होता है। डेटा हमारे सर्वर तक कभी नहीं पहुँचता।
- शुद्धता: CSV पार्सर एक वास्तविक स्टेट मशीन है। उद्धरित कॉमा (
"Bob, Jr."), अंतर्निहित न्यूलाइन और एस्केप्ड उद्धरण वाले फ़ील्ड तीन के बजाय एक सेल में पार्स होते हैं — साधारणsplit(',')कार्यान्वयन यहाँ चूक जाते हैं। - प्रकार-निष्ठता: वैकल्पिक कोअर्शन संख्यात्मक और बूलियन कोशिकाओं को वास्तविक JSON संख्याओं और बूलियन में बदलता है, इसलिए आपको मिलने वाला ऐरे बिना किसी दूसरे क्लीनअप पास के सीधे उपभोग के लिए तैयार है।
- लचीलापन: गैर-कॉमा CSV बोलियों के लिए कोई भी सीमांकक चुनें, तय करें कि पहली पंक्ति हेडर है या नहीं, और जब हर सेल को स्ट्रिंग ही रहना हो तब टाइप कोअर्शन बंद कर दें।
CSV to JSON रूपांतरण के सामान्य अनुप्रयोग क्या हैं?
CSV को JSON में पार्स करना डेटा कार्य और टूलिंग में हर जगह दिखाई देता है:
- API मॉकिंग: स्प्रेडशीट से निर्यात किया गया CSV फ़िक्स्चर पेस्ट करना और उसे JSON ऐरे में बदलना ताकि आपका लोकल सर्वर उसे एक मॉक एंडपॉइंट के रूप में लौटा सके।
- डेटा आयात: स्प्रेडशीट एक्सपोर्ट (संपर्क, इन्वेंटरी, सर्वेक्षण प्रतिक्रियाएँ) को JSON ऐरे में बदलना जिसे आपका एप्लिकेशन या स्क्रिप्ट CSV पार्सर निर्भरता के बिना इटरेट कर सके।
- कॉन्फ़िग संपादन: गैर-तकनीकी समीक्षकों को स्प्रेडशीट में सेल-दर-सेल सेटिंग्स या फ़ीचर फ़्लैग संपादित करने देना, फिर सहेजे गए CSV को JSON में बदलना जो आपका ऐप वास्तव में लोड करता है।
CSV to JSON उदाहरण कैसा दिखता है?
पहली पंक्ति पर name,age, दूसरी पर Alice,30, और तीसरी पर "Bob, Jr.",25 पेस्ट करने, फिर कॉमा सीमांकक, पहली पंक्ति को कुंजियाँ मानकर, और टाइप कोअर्शन चालू रखते हुए CONVERT दबाने पर [{"name":"Alice","age":30},{"name":"Bob, Jr.","age":25}] बनता है — "Bob, Jr." में उद्धरित कॉमा एक फ़ील्ड के अंदर रहता है, और आयु वास्तविक JSON संख्याएँ बन जाती हैं।
क्या यह CSV to JSON कनवर्टर पूरी तरह से मेरे ब्राउज़र में चलता है?
हाँ। हर पार्स और रूपांतरण पास आपके ब्राउज़र टैब के अंदर JavaScript के रूप में स्थानीय रूप से चलता है। यह टूल fetch, XMLHttpRequest या navigator.sendBeacon को बिल्कुल नहीं बुलाता — आपके CSV पेलोड हमारे सर्वर, किसी थर्ड-पार्टी कनवर्टर या किसी एनालिटिक्स पाइपलाइन तक कभी नहीं पहुँचते। पृष्ठ एक बार लोड हो जाने के बाद यह टूल ऑफ़लाइन भी काम करता है, क्योंकि यह केवल एक स्थिर HTML/CSS/JS बंडल है जिसमें कोई रनटाइम API निर्भरता नहीं है।
यह कनवर्टर किस आकार तक के इनपुट को संभाल सकता है?
कनवर्टर पूरे इनपुट को मेमोरी में बफ़र करता है और मुख्य थ्रेड पर समकालिक रूप से चलता है, इसलिए वास्तविक सीमा आपके डिवाइस पर निर्भर करती है। आधुनिक लैपटॉप पर लगभग 10 MB तक का CSV (मोटे तौर पर 1,00,000 सामान्य पंक्तियाँ) बिना ध्यान देने योग्य रुकावट के परिवर्तित हो जाता है। इसके आगे UI रुक सकता है। Web Worker और चंक्ड पार्सर के साथ स्ट्रीम्ड रूपांतरण एक नियोजित अगला सुधार है — फ़िलहाल, बहुत बड़े डेटासेट पेस्ट करने से पहले उन्हें विभाजित कर लें।
CSV to JSON पार्सर उद्धरित कॉमा और अंतर्निहित न्यूलाइन को कैसे संभालता है?
पार्सर तीन अवस्थाओं (FIELD_START, IN_UNQUOTED_FIELD, IN_QUOTED_FIELD) वाली एक वर्ण-दर-वर्ण स्टेट मशीन है — न कि कोई भोली split(',')। डबल कोट्स में लिपटा एक फ़ील्ड सीमांकक, CR, LF या "" के रूप में एस्केप किया गया लिटरल डबल कोट रख सकता है, बिना फ़ील्ड सीमाओं को तोड़े। इसलिए "Bob, Jr.",25 तीन फ़ील्ड के बजाय दो फ़ील्ड में पार्स होता है, और पंक्तियों के पार उद्धरित बहु-पंक्ति विवरण एक ही सेल में पार्स होता है।
JSON आउटपुट में संख्याएँ, बूलियन और खाली सेल कैसे टाइप किए जाते हैं?
टाइपिंग टाइप कोअर्शन टॉगल द्वारा नियंत्रित होती है। कोअर्शन चालू (डिफ़ॉल्ट) रहने पर, संख्या जैसा दिखने वाला सेल JSON संख्या बनता है, true/false बूलियन बनते हैं, और लिटरल null JSON null बनता है; बाकी सब स्ट्रिंग रहता है। कोअर्शन बंद रहने पर, सामग्री चाहे कुछ भी हो हर मान स्ट्रिंग रहता है — लीडिंग जीरो, फ़ोन नंबर या ID कोड बचाने के लिए उपयोगी। छोटी पंक्तियों में अंतिम खाली सेल खाली स्ट्रिंग के रूप में भेजे जाते हैं ताकि हर ऑब्जेक्ट में पूरी कुंजी-सेट हो।
CSV पक्ष कौन-से सीमांकक समर्थन करता है?
चार स्पष्ट सीमांकक समर्थित हैं: कॉमा (,, RFC 4180 डिफ़ॉल्ट), सेमीकोलन (;, यूरोपीय लोकेल में सामान्य), टैब (\t, TSV बोली) और पाइप (|)। आप स्वतः-पहचान भी चुन सकते हैं, जो इनपुट के पहले 4 KB के भीतर उद्धरित क्षेत्रों के बाहर हर उम्मीदवार की आवृत्ति गिनता है और सबसे अधिक आवृत्ति वाले उस सीमांकक को चुनता है जो पहली पाँच पंक्तियों में लगातार कॉलम-संख्या देता है।
यह CSV to JSON कनवर्टर एक वास्तविक स्टेट मशीन से पार्स करता है और स्वच्छ, उपभोग-योग्य JSON देता है जिसे आप सीधे API कॉल, स्क्रिप्ट या कोड समीक्षा में पेस्ट कर सकते हैं — बिना एक भी बाइट अपलोड किए।