2012-04-19 13 views
15

मैं पर कोई रास्ता खोजने के लिए संघर्ष कर रहा हूं Node.js. में CSV पर डेटा लिखें।Node.js में एक CSV को लिखें

वहाँ कई सीएसवी प्लगइन्स उपलब्ध हैं लेकिन वे केवल stdout के लिए 'लिखने'। आदर्श रूप में मैं एक पंक्ति-दर-पंक्ति एक पाश का उपयोग कर के आधार पर लिखना चाहते हैं।

अग्रिम धन्यवाद।

+2

* "लेकिन वे केवल 'लिखने' stdout करने के लिए" * यही कारण है कि लगता है ** वास्तव में ** आश्चर्य की बात। वे किसी भी लिखने योग्य 'Stream' नहीं लिखेगा यह ** है **' होने की stdout' ?! –

+0

आप ताकि अन्य लोग उनकी समीक्षा करेगी और/या पता कर सकते हैं सुझाव देने के लिए alternates जो, मॉड्यूल आप परीक्षण किया है करने के लिए लिंक शामिल कर सकते हैं? –

+0

वहाँ NodeJS का उपयोग कर सीएसवी उत्पन्न पर एक ट्यूटोरियल है। http://programmerblog.net/generate-csv-using-nodejs/ –

उत्तर

16

node-csv-parser (npm install csv) के लिए दस्तावेज़ विशेष रूप से बताते हैं कि इसका उपयोग धाराओं के साथ किया जा सकता है (fromStream, toStream देखें)। तो यह stdout उपयोग करने के लिए हार्ड-कोडेड नहीं है।

कई अन्य सीएसवी पार्सर्स भी आते हैं जब आप npm search csv - आप उन्हें भी देखना चाहेंगे। FS

0

यहाँ csv-stringify का उपयोग कर एक डाटासेट कि एक csv फ़ाइल के लिए स्मृति में फिट बैठता है fs.writeFile का उपयोग कर लिखने के लिए एक सरल उदाहरण है।

import stringify from 'csv-stringify'; 
import fs from 'fs'; 

let data = []; 
let columns = { 
    id: 'id', 
    name: 'Name' 
}; 

for (var i = 0; i < 10; i++) { 
    data.push([i, 'Name ' + i]); 
} 

stringify(data, { header: true, columns: columns }, (err, output) => { 
    if (err) throw err; 
    fs.writeFile('my.csv', output, (err) => { 
    if (err) throw err; 
    console.log('my.csv saved.'); 
    }); 
}); 
संबंधित मुद्दे