最近,我开始使用node.js。在我的一个项目中完成一项需求时,我面临一个问题,即我应该能够动态地向csv文件中写入一些数据,并让它作为弹出窗口提示用户下载(使用保存和取消选项- 与我们通常一样)看到)。谷歌搜索一段时间后,我决定使用csv npm模块https://github.com/wdavidw/node-csv- parser。我能够将数据写入文件并使用此模块保存。我想提示一个弹出窗口,用于选择是否保存该文件。
我的代码看起来像这样:
// Sample Data var data = [["id", "subject1", "subject2", "subject3"], ["jack", 85, 90, 68], ["sam", 77, 89, 69]] // Server Side Code var csv = require('../../node_modules/csv'); var fs = require('fs'); createCSV = function(data, callback) { csv().from(data).to(fs.createWriteStream('D:/test.csv')) // writing to a file } // Client side call sample $("#exportToCSV").click(function() { callToServer.createCSV(data); return false; });
就编写csv文件而言,此方法工作良好。
任何帮助是极大的赞赏。-谢谢
我做了这样的事情:
http.createServer(function(request, response) { response.setHeader('Content-disposition', 'attachment; filename=testing.csv'); response.writeHead(200, { 'Content-Type': 'text/csv' }); csv().from(data).to(response) }) .listen(3000);