CSV फ़ाइलें एक सुविधाजनक डेटा-भंडारण प्रारूप हैं, और आप कॉन्फ़िगरेशन से लेकर कच्चे डेटा तक किसी भी चीज़ को संभालने के लिए अपने Node.js प्रोजेक्ट में उनका उपयोग कर सकते हैं। वे दो ऐप्स के बीच जानकारी साझा करने को आसान बना सकते हैं, भले ही वे अलग-अलग भाषाओं में लिखे गए हों।
Node.js में, आप CSV फ़ाइलों को पढ़ने और लिखने के लिए कई विधियों का उपयोग कर सकते हैं।
यह ट्यूटोरियल आपको दिखाता है कि इसका उपयोग कैसे करें एफ एस ओ मॉड्यूल और फास्ट-सीएसवी एनपीएम पैकेज सीएसवी फाइलों को पढ़ने और लिखने के लिए।
परियोजना सेटअप
इस ट्यूटोरियल का अनुसरण करने के लिए, सुनिश्चित करें कि आपने अपनी मशीन पर Node.js स्थापित किया है। जाँच करने के लिए यह कमांड चलाएँ:
नोड -v
इसे एक संस्करण संख्या वापस करनी चाहिए। यदि आपके पास Node.js स्थापित नहीं है, तो इसमें दिए गए निर्देशों का पालन करें स्थापना ट्यूटोरियल ऐसा करने के लिए।
अपनी पसंदीदा निर्देशिका में, parse-csv नाम का एक नया फ़ोल्डर बनाएँ।
एमकेडीआईआर पार्स-सीएसवी
पर जाए पार्स-सीएसवी और एक नई फाइल बनाएं। इसे parseCSV.js नाम दें।
सीडी पार्स-सीएसवी
स्पर्शपार्ससीएसवी.जेएस
अब आप सीएसवी के साथ काम करना शुरू कर सकते हैं।
fs मॉड्यूल का उपयोग करना
fs (फाइल सिस्टम के लिए छोटा) मॉड्यूल में Node.js में फाइल सिस्टम के साथ इंटरैक्ट करने के लिए कई कमांड हैं।
एक बार में पूरी फाइल पढ़ें
रीडफाइल () और रीडफाइलसिंक () से आदेश एफ एस ओ मॉड्यूल आपको Node.js में फ़ाइल सामग्री को पढ़ने में सक्षम बनाता है। इन आदेशों के बीच का अंतर यह है कि रीडफाइलसिंक () समकालिक है—यह अन्य JavaScript को निष्पादित करने से रोकता है—जबकि रीडफाइल () अतुल्यकालिक, या गैर-अवरुद्ध है।
चूंकि CSV फ़ाइलों को पढ़ने में थोड़ा समय लग सकता है, विशेष रूप से बड़ी फ़ाइलों के लिए, गैर-अवरुद्ध कमांड का उपयोग करना अक्सर बेहतर होता है, रीडफाइल (), नीचे दिखाए गए रूप में।
स्थिरांक एफएस = ज़रूरत होना('एफएस');
fs.readफ़ाइल('csvdemo.csv', 'utf8', फ़ंक्शन (त्रुटि, डेटा) {
/* डेटा पार्स करें */
});
यदि आपके पास एक नमूना CSV फ़ाइल नहीं है, तो आप इससे एक फ़ाइल जनरेट कर सकते हैं मॉकारू. आप यह भी सीख सकते हैं कि कैसे एक सीएसवी फ़ाइल बनाएँ स्वयं।
लाइन बाय लाइन पढ़ें
जबकि रीडफाइल () काम करता है, यह स्मृति गहन है क्योंकि यह पूरी सीएसवी फ़ाइल को एक बार में पढ़ता है। यह एक समस्या है, खासकर जब बड़ी सीएसवी फाइलों के साथ काम कर रहे हों। एक विकल्प यह है कि का उपयोग करके एक समय में एक पंक्ति को पढ़ा जाए fs.createReadStream () आज्ञा।
स्थिरांक एफएस = ज़रूरत होना("एफएस");
स्थिरांक रीडलाइन = ज़रूरत होना("पढ़ने के लिए लाइन");
कास्ट स्ट्रीम = fs.createReadStream ("./csvdemo.csv");
स्थिरांक आरएल = रीडलाइन। क्रिएटइंटरफेस ({ इनपुट: धारा });
होने देना डेटा = [];आरएल.ऑन("रेखा", (पंक्ति) => {
डेटा.पुश (पंक्ति। विभाजन (","));
});
आरएल.ऑन("बंद करे", () => {
सांत्वना देनालॉग (डेटा);
});
यहां, आप सीएसवी फ़ाइल नाम को पास कर रहे हैं fs.createReadStream () एक पठनीय धारा बनाने के लिए। स्ट्रीम आपको बड़ी मात्रा में डेटा के साथ काम करने देती है, जिससे आप इसे टुकड़ों में एक्सेस कर सकते हैं।
एक बार जब आप पठनीय स्ट्रीम बना लेते हैं, तो उसे पास करें रीडलाइन.क्रिएटइंटरफेस () तरीका। पढ़ने के लिए लाइन मॉड्यूल एक बार में डेटा को एक लाइन पढ़ने के लिए एक इंटरफ़ेस प्रदान करता है। अब आप प्रत्येक पंक्ति को डेटा सरणी में धकेल सकते हैं क्योंकि इसे पढ़ा जा रहा है।
ध्यान दें, हालांकि, यह कोड प्रत्येक पंक्ति को अल्पविराम पर विभाजित करता है। हालांकि यह सबसे बुनियादी सीएसवी फ़ाइल के साथ काम करेगा, प्रारूप वास्तव में इसके नाम से कहीं अधिक जटिल है। CSV फ़ाइलों को मैन्युअल रूप से पार्स करना एक मजबूत तरीका नहीं है, खासकर यदि आप स्वयं डेटा के नियंत्रण में नहीं हैं। अधिकांश स्थितियों के लिए, आपको CSV लाइब्रेरी का उपयोग करना चाहिए।
फास्ट-सीएसवी. का उपयोग करना
CSV फ़ाइलों को मज़बूती से पार्स करने के लिए, आप जैसे पुस्तकालय का उपयोग कर सकते हैं फास्ट-सीएसवी, जो एक npm पैकेज के रूप में उपलब्ध है। यह न केवल CSV फ़ाइलों को पढ़ना बल्कि उन्हें प्रारूपित करना भी आसान बनाता है।
आरंभ करने के लिए, आरंभ करें NPM और स्थापित करें फास्ट-सीएसवी.
npm init -y
एनपीएम मैं फास्ट-सीएसवी
फास्ट-सीएसवी का उपयोग करके सीएसवी फाइलें निम्नानुसार पढ़ें।
स्थिरांक एफएस = ज़रूरत होना('एफएस')
स्थिरांक सीएसवी = ज़रूरत होना('फास्ट-सीएसवी');
स्थिरांक डेटा = []
fs.createReadStream('./csvdemo.csv')
।पाइप(सीएसवीपार्स({ हेडर: सच }))
।पर('त्रुटि', त्रुटि => कंसोल.त्रुटि (त्रुटि))
।पर('जानकारी', पंक्ति => डेटा.पुश (पंक्ति))
।पर('अंत', () => कंसोल.लॉग (डेटा));
उपरोक्त कोड में, सीएसवी फ़ाइल से एक पठनीय स्ट्रीम बनाकर शुरू करें, फिर इसे फास्ट सीएसवी से पार्स विधि से कनेक्ट करें पाइप(). ध्यान दें कि आप हेडर विकल्प को पास कर रहे हैं सीएसवी.पार्स (). यह पहली पंक्ति को छोड़ देता है। हेडर को इस पर सेट करें झूठा अगर आपकी CSV फ़ाइल की पहली पंक्ति में हेडर नहीं हैं।
चूंकि CSV फ़ाइल एक समय में एक पंक्ति पढ़ी जाती है, आप प्रत्येक पंक्ति को डेटा सरणी में धकेल रहे हैं। पूरी फ़ाइल पढ़ने के बाद, आप अपनी इच्छानुसार डेटा सरणी की सामग्री में हेरफेर कर सकते हैं।
CSV को पार्स करने के एक से अधिक तरीके हैं
CSV फ़ाइलें बड़े डेटा सेट को संग्रहीत करने के लिए उपयोगी होती हैं क्योंकि उन्हें पार्स करना आसान होता है। Node.js में, आप बिल्ट-इन fs मॉड्यूल या NPM पैकेज का उपयोग कर सकते हैं।
अपने स्वयं के पार्सिंग कोड को मैन्युअल रूप से लिखने की तुलना में फास्ट-सीएसवी जैसी लाइब्रेरी का उपयोग करना बहुत आसान और अधिक मजबूत है। सीएसवी को पार्स करने के लिए कुछ अन्य पैकेज हैं सीएसवी-पार्सर और पापा पार्सर.
Node.js में रीस्टफुल एपीआई के लिए एक शुरुआती गाइड
आगे पढ़िए
संबंधित विषय
- प्रोग्रामिंग
- प्रोग्रामिंग
- जावास्क्रिप्ट
लेखक के बारे में
मैरी गैथोनी एक सॉफ्टवेयर डेवलपर हैं जिन्हें तकनीकी सामग्री बनाने का जुनून है जो न केवल सूचनात्मक है बल्कि आकर्षक भी है। जब वह कोडिंग या लेखन नहीं कर रही होती है, तो उसे दोस्तों के साथ घूमने और बाहर रहने में मज़ा आता है।
हमारे समाचार पत्र के सदस्य बनें
तकनीकी युक्तियों, समीक्षाओं, निःशुल्क ई-पुस्तकों और अनन्य सौदों के लिए हमारे न्यूज़लेटर से जुड़ें!
सब्सक्राइब करने के लिए यहां क्लिक करें