JavaScript (Node.js) में Excel के साथ कार्य: लाइब्रेरीज़ का अवलोकन और व्यावहारिक उदाहरण
इस तथ्य के बावजूद कि PythonLib Python भाषा को समर्पित है, आधुनिक वेब डेवलपमेंट में अक्सर Node.js का उपयोग करके सर्वर साइड पर Excel तालिकाओं को संसाधित करने की आवश्यकता उत्पन्न होती है। JavaScript (Node.js) सर्वर अनुप्रयोग बनाने के लिए एक शक्तिशाली वातावरण है, और स्प्रेडशीट के साथ कार्य करना एक मांग वाला कार्य है। इस लेख में, हम Node.js में Excel के साथ कार्य करने के लिए तीन मुख्य लाइब्रेरीज़: node-xlsx (xlsx), exceljs और excel4node पर विचार करेंगे, और उनके उपयोग के उदाहरण भी प्रस्तुत करेंगे।
Node.js में Excel के साथ कार्य की आवश्यकता क्यों?
सर्वर साइड पर अक्सर आवश्यकता होती है:
- उपयोगकर्ताओं द्वारा डाउनलोड करने के लिए XLSX प्रारूप में रिपोर्ट तैयार करना;
- अपलोड की गई Excel फ़ाइलों से डेटाबेस में डेटा आयात करना;
- मूल्य सूचियों, लेखा तालिकाओं और अन्य दस्तावेज़ों को स्वचालित रूप से संसाधित करना;
- फ़ॉर्मेटिंग, चार्ट और शैलियों के साथ जटिल रिपोर्ट बनाना।
Node.js कई विशेष लाइब्रेरीज़ प्रदान करके इन कार्यों को बखूबी संभालता है।
xlsx लाइब्रेरी (SheetJS)
SheetJS (पैकेज xlsx) JavaScript में Excel के साथ कार्य करने के लिए सबसे लोकप्रिय और परिपक्व लाइब्रेरी है। यह कई प्रारूपों: XLSX, XLS, CSV, ODS और अन्य को पढ़ने और लिखने का समर्थन करती है। मुख्य लाभ सरलता और गति है।
स्थापना
npm install xlsxउदाहरण: Excel फ़ाइल बनाना और सहेजना
const XLSX = require('xlsx');
// एक नई कार्यपुस्तिका बनाएँconst workbook = XLSX.utils.book_new();
// तालिका के लिए डेटाconst data = [ ['नाम', 'आयु', 'शहर'], ['अन्ना', 28, 'मास्को'], ['इवान', 35, 'सेंट पीटर्सबर्ग'], ['मारिया', 22, 'कज़ान']];
// ऐरे को शीट में बदलेंconst worksheet = XLSX.utils.aoa_to_sheet(data);
// कार्यपुस्तिका में शीट जोड़ेंXLSX.utils.book_append_sheet(workbook, worksheet, 'उपयोगकर्ता');
// फ़ाइल को डिस्क पर लिखेंXLSX.writeFile(workbook, 'users.xlsx');console.log('फ़ाइल users.xlsx बनाई गई!');उदाहरण: मौजूदा फ़ाइल पढ़ना
const XLSX = require('xlsx');
const workbook = XLSX.readFile('users.xlsx');const sheetName = workbook.SheetNames[0]; // पहली शीट लेंconst worksheet = workbook.Sheets[sheetName];
// शीट को ऑब्जेक्ट्स की ऐरे में बदलेंconst jsonData = XLSX.utils.sheet_to_json(worksheet);console.log(jsonData);exceljs लाइब्रेरी
ExcelJS एक अधिक आधुनिक और सुविधा संपन्न लाइब्रेरी है। यह फ़ॉर्मेटिंग के लिए समृद्ध क्षमताएँ प्रदान करती है: सेल शैलियाँ, फ़ॉन्ट, रंग, सेल मर्ज करना, सशर्त फ़ॉर्मेटिंग, इमेज और चार्ट के साथ कार्य। यह बड़ी फ़ाइलों के साथ कार्य करने के लिए स्ट्रीम का समर्थन करती है।
स्थापना
npm install exceljsउदाहरण: फ़ॉर्मेटेड रिपोर्ट बनाना
const ExcelJS = require('exceljs');
async function createReport() { const workbook = new ExcelJS.Workbook(); const sheet = workbook.addWorksheet('रिपोर्ट');
// कॉलम परिभाषित करें sheet.columns = [ { header: 'उत्पाद', key: 'product', width: 30 }, { header: 'मूल्य', key: 'price', width: 15 }, { header: 'मात्रा', key: 'quantity', width: 15 } ];
// डेटा जोड़ें sheet.addRow({ product: 'लैपटॉप', price: 75000, quantity: 10 }); sheet.addRow({ product: 'माउस', price: 1500, quantity: 50 }); sheet.addRow({ product: 'कीबोर्ड', price: 3500, quantity: 30 });
// हेडर को फ़ॉर्मेट करें const headerRow = sheet.getRow(1); headerRow.font = { bold: true, size: 12, color: { argb: 'FFFFFFFF' } }; headerRow.fill = { type: 'pattern', pattern: 'solid', fgColor: { argb: 'FF4472C4' } };
// संरेखण headerRow.alignment = { vertical: 'middle', horizontal: 'ce