CSV तालिका (.csv)

RFC मानक

CSV (अल्पविराम से अलग किए गए मान) सारणीबद्ध डेटा के लिए व्यापक रूप से प्रचलित सादा-पाठ प्रारूप है। इसमें हर पंक्ति एक डेटा रिकॉर्ड होती है और फ़ील्ड सीमांकक वर्णों से अलग किए जाते हैं।

XLSX को CSV में कन्वर्ट करें

मुफ्त इन-ब्राउज़र XLSX से CSV कन्वर्टर। अपने डिवाइस पर तुरंत फ़ाइलें कन्वर्ट करें।

CSV ऑनलाइन कंप्रेस करें

निजी - फ़ाइलें कभी आपके डिवाइस से बाहर नहीं जातीं

निरीक्षण और मेटाडेटा

ऑपरेटिंग सिस्टम और फ़ाइल विश्लेषक शुरुआती बाइनरी बाइट अनुक्रम का निरीक्षण करके CSV फ़ाइलों की पहचान करते हैं:

फ़ाइलें यहाँ चुनें या छोड़ें

निजी - फ़ाइलें कभी आपके डिवाइस से बाहर नहीं जातीं

या पेस्ट करें Ctrl+V
नेटवर्क पर कोई डेटा भेजे बिना गोपनीयता की गारंटी: बाहरी सर्वर पर 0 बाइट अपलोड किए गए। सारी प्रोसेसिंग आपके ब्राउज़र सैन्डबॉक्स में स्थानीय रूप से हुई।

बाइट-स्तरीय हेडर हस्ताक्षर (मैजिक बाइट्स)

ऑपरेटिंग सिस्टम और फ़ाइल विश्लेषक शुरुआती बाइनरी बाइट अनुक्रम का निरीक्षण करके CSV फ़ाइलों की पहचान करते हैं:

HEX हस्ताक्षर (ऑफ़सेट 0):

कोई निश्चित हस्ताक्षर नहीं

ASCII निरूपण: टेक्स्ट बाइट; एन्कोडिंग अलग-अलग होती है (अक्सर UTF-8)

मानकीकरण: RFC 4180 / IETF

तकनीकी विनिर्देश

कंटेनर आर्किटेक्चरसारणीबद्ध डेटा पंक्तियों और स्तंभों का प्रतिनिधित्व करने वाली सीमांकित सादी पाठ फ़ाइल
कंप्रेशनदोहराए जाने वाले सारणीबद्ध रिकॉर्ड पर Gzip / Deflate 85%-95% संपीड़न प्राप्त करता है
बाइट एंडियानेसUTF-8 टेक्स्ट स्ट्रीम (एक्सेल द्वारा उपयोग किया जाने वाला वैकल्पिक UTF-8 BOM EF BB BF)
कलर स्पेसलागू नहीं
चैनल और संरचनाCRLF द्वारा सीमांकित पंक्ति रिकॉर्ड और अल्पविराम द्वारा सीमांकित स्तंभ
अधिकतम आयामअसीमित; संपूर्ण फ़ाइल को मेमोरी में लोड किए बिना गीगाबाइट तक स्ट्रीम करने योग्य
पारदर्शितालागू नहीं
स्ट्रीमिंग और प्रोग्रेसिवसभी डेटा पाइपलाइनों द्वारा समर्थित मूल पंक्ति-दर-पंक्ति स्ट्रीम प्रोसेसिंग

तकनीकी तुलना मैट्रिक्स: CSV बनाम प्रतियोगी

तकनीकी विशेषताCSV (वर्तमान)Excel (XLSX)ParquetJSON
फ़ाइल प्रकारप्लेन टेक्स्ट फ्लैट टेबलज़िप की गई XML स्प्रेडशीटबाइनरी स्तंभ-आधारित भंडारणपदानुक्रमित पाठ
एकाधिक शीटनहीं (केवल एकल फ्लैट टेबल)हाँ (एकाधिक वर्कबुक और शीट)पार्टीशन-आधारित स्टोरेजनेस्टेड ऐरे और ऑब्जेक्ट
डेटा प्रकारबिना प्रकार निर्दिष्ट किया हुआ कच्चा पाठटाइप किए गए सेल, फ़ॉर्मूले, फ़ॉर्मेटिंगसख्त बाइनरी कॉलम प्रकारप्रिमिटिव प्रकार (स्ट्रिंग, नंबर, बूल)
बिग डेटा एनालिटिक्सधीमा (प्रत्येक पंक्ति को रेखीय रूप से पढ़ना आवश्यक है)बिग डेटा के लिए उपयुक्त नहींअति-तेज (कॉलम प्रूनिंग और प्रेडिकेट पुशडाउन)मध्यम

सामान्य करप्शन मोड और हेक्स रिकवरी गाइड

कॉलम दाईं ओर शिफ्ट हो जाते हैं या पंक्ति की गिनती मेल नहीं खाती है।

मूल कारण: आसपास के उद्धरण चिह्नों के बिना एक अनएस्केप किए गए अल्पविराम वाला टेक्स्ट फ़ील्ड।

रिकवरी: RFC 4180 के लिए आवश्यक है कि अल्पविराम वाले फ़ील्ड दोहरे उद्धरण चिह्नों में लपेटे जाएं: "Smith, John"।

एक्सेल में स्वराघात चिह्न वाले वर्ण अजीब प्रतीकों (é के बजाय é जैसे मोजिबाके) के रूप में रेंडर होते हैं।

मूल कारण: एक्सेल ने लेगेसी Windows ANSI/CP1252 वर्ण एन्कोडिंग मानकर UTF-8 CSV खोला।

रिकवरी: फ़ाइल की शुरुआत में 3-बाइट UTF-8 बाइट ऑर्डर मार्क (0xEF 0xBB 0xBF) जोड़ें।

सुरक्षा विश्लेषण और पार्सर अटैक वेक्टर्स

CSV फ़ाइलें Excel और Google Sheets जैसे स्प्रेडशीट सॉफ़्टवेयर में सीधे खुलती हैं, जिससे उपयोगकर्ता फ़ॉर्मूला इंजेक्शन (CSV इंजेक्शन) हमलों के संपर्क में आ जाते हैं।

ज्ञात अटैक वेक्टर्स

  • फ़ॉर्मूला इंजेक्शन: '=', '+', '-', या '@' से शुरू होने वाली सेल स्प्रेडशीट मैक्रोज़ या DDE कमांड निष्पादित करती हैं (उदा. '=cmd|' /C calc'!A0')।
  • क्लिक करने पर HYPERLINK() फ़ॉर्मूले संवेदनशील सेल डेटा दूरस्थ हमलावरों के सर्वर पर भेजकर उसकी चोरी कर सकते हैं।

सुरक्षात्मक सर्वोत्तम प्रथाएँ: उपयोगकर्ता डेटा को CSV में निर्यात करते समय, Excel में सादे पाठ रेंडरिंग को बल देने के लिए '=', '+', '-', या '@' से शुरू होने वाले किसी भी सेल में एकल उद्धरण (') या टैब जोड़ें।

ऐतिहासिक मूल और मील के पत्थर

2015वेब पर सारणीबद्ध डेटा और मेटाडेटा के लिए W3C मॉडल JSON-LD मेटाडेटा डिस्क्रिप्टर के साथ वेब पर CSV (CSVW) को मानकीकृत करता है।
2005IETF ने CSV फ़ाइलों के लिए औपचारिक विनिर्देश स्थापित करते हुए RFC 4180 प्रकाशित किया।
1972IBM Fortran (H Extended) कंपाइलर अल्पविराम-सीमांकित इनपुट/आउटपुट को लागू करता है।

मुख्य लाभ और खूबियाँ

  • अधिकतम सादगी: किसी भी टेक्स्ट एडिटर में पठनीय और हर डेटाबेस और स्प्रेडशीट में आयात योग्य।
  • पूरा इन-मेमोरी DOM बनाए बिना अत्यधिक तेज़ पंक्ति-दर-पंक्ति स्ट्रीमिंग।
  • न्यूनतम अतिरिक्त बोझ: लंबे टैग सिंटैक्स या स्कीमा परिभाषाएँ नहीं।

तकनीकी सीमाएँ और कमियाँ

  • कोई मानक डेटा प्रकार नहीं: संख्याएँ, तिथियाँ, बूलियन और टेक्स्ट, सभी कच्ची स्ट्रिंग के रूप में संग्रहीत होते हैं।
  • कई शीट, सेल फ़ॉर्मेटिंग, फ़ॉर्मूला या मेटाडेटा के लिए कोई समर्थन नहीं।
  • सीमांकक संघर्ष (पाठ के भीतर अल्पविराम, यूरोपीय लोकेल में दशमलव अल्पविराम) बार-बार पार्सिंग बग का कारण बनते हैं।

रोचक तकनीकी जानकारी

  • कई यूरोपीय देशों में जहाँ अल्पविराम का उपयोग दशमलव बिंदु के रूप में किया जाता है, वहाँ CSV विभाजक के रूप में अल्पविराम के स्थान पर अर्धविराम (;) का उपयोग किया जाता है।
  • गैर-ASCII उच्चारण चिह्न वाले वर्णों को सही ढंग से प्रदर्शित करने के लिए Microsoft Excel को ऐतिहासिक रूप से UTF-8 BOM (0xEF 0xBB 0xBF) की आवश्यकता होती थी।
  • यूनाइटेड किंगडम की नेशनल हेल्थ सर्विस ने 2020 में प्रसिद्ध रूप से लगभग 16,000 COVID-19 संपर्क ट्रेसिंग रिकॉर्ड खो दिए क्योंकि डेटा को एक पुराने एक्सेल स्प्रेडशीट प्रारूप में आयात किया गया था, जिसकी पंक्ति सीमा 65,536 पर सीमित थी।

अक्सर पूछे जाने वाले तकनीकी प्रश्न

RFC 4180 क्या है?

RFC 4180 CSV के लिए आधिकारिक IETF मानक है। यह अनिवार्य करता है कि अल्पविराम, लाइन ब्रेक या दोहरे उद्धरण चिह्नों वाले फ़ील्ड को दोहरे उद्धरण चिह्नों में बंद किया जाना चाहिए, और आंतरिक उद्धरणों को उन्हें दो बार लिखकर ("") एस्केप किया जाना चाहिए।

Excel में CSV फ़ाइलें भ्रष्ट वर्णों के साथ क्यों खुलती हैं?

Microsoft Excel के पुराने संस्करण CSV फ़ाइलें सीधे खोलते समय UTF-8 के बजाय स्थानीय Windows कोड पेज (जैसे Windows-1252) को डिफ़ॉल्ट रूप से चुनते हैं। फ़ाइल की शुरुआत में UTF-8 BOM (बाइट ऑर्डर मार्क) जोड़ने से Excel UTF-8 को सही ढंग से डिकोड करता है।

CSV इंजेक्शन (फ़ॉर्मूला इंजेक्शन) क्या है?

CSV इंजेक्शन तब होता है जब फ़ॉर्मूला शुरू करने वाले वर्ण ('=', '+', '-', '@') युक्त अविश्वसनीय उपयोगकर्ता इनपुट को स्प्रेडशीट फ़ाइल में निर्यात किया जाता है। Excel जैसे सॉफ़्टवेयर में फ़ाइल खोलने पर स्प्रेडशीट अपने-आप फ़ॉर्मूला या डायनेमिक डेटा एक्सचेंज (DDE) कमांड चलाती है। इससे सिस्टम कमांड चल सकते हैं या डेटा चुराकर बाहर भेजा जा सकता है।

संबंधित CSV रूपांतरण जोड़े

XLSX से CSV

एक्सेल शीट को CSV टेबल में बदलने से कच्चा सारणीबद्ध डेटा अधिकतम सॉफ़्टवेयर संगतता के लिए एक सार्वभौमिक पाठ प्रारूप में निकल जाता है।

CSV से XLSX

साधारण पाठ-आधारित CSV फ़ाइलों को सुविधा संपन्न XLSX स्प्रेडशीट में बदलने से उन्नत डेटा स्टाइलिंग, सूत्र और कई शीट सक्षम होती हैं।

CSV से SQLITE

फ्लैट टेक्स्ट फाइलों को संरचित रिलेशनल डेटाबेस में बदलने से आपको तेज़ क्वेरी चलाने और जटिल डेटा संबंधों को प्रबंधित करने की अनुमति मिलती है।

SQL से CSV

सरल डेटा विश्लेषण और रिपोर्टिंग के लिए रिलेशनल डेटाबेस बैकअप स्क्रिप्ट को फ़्लैट सारणीबद्ध स्प्रेडशीट में बदलें।

HDF5 से CSV

पदानुक्रमित HDF5 डेटासेट को फ़्लैट Telemetry CSV फ़ाइलों में बदलने से जटिल बहु-आयामी वैज्ञानिक रिकॉर्ड स्प्रेडशीट विश्लेषण के लिए सरल पंक्तियों और स्तंभों में बदल जाते हैं।

NETCDF से CSV

बहु-आयामी NetCDF वैज्ञानिक ग्रिड को फ़्लैट टेलीमेट्री CSV फ़ाइलों में बदलने से जटिल जलवायु और महासागर डेटा बुनियादी स्प्रेडशीट सॉफ्टवेयर में पठनीय हो जाता है।

VCF से CSV

vCard फ़ाइलों को संपर्क CSV में बदलने से आसान डेटाबेस आयात के लिए पदानुक्रमित संपर्क कार्ड सपाट स्प्रेडशीट पंक्तियों में बदल जाते हैं।