在node.js和express中下载XLS

时间:2015-08-17 08:23:20

标签: javascript node.js excel express

我已经实现了以下示例代码,用于在node.js中创建excel文件。

当用户点击下载按钮时,这个自动创建的文件是可以下载的。

var fs = require('fs');
var writeStream = fs.createWriteStream("file.xls");

var header="Sl No"+"\t"+" Age"+"\t"+"Name"+"\n";
var row1 = "0"+"\t"+" 21"+"\t"+"Rob"+"\n";
var row2 = "1"+"\t"+" 22"+"\t"+"bob"+"\n";

writeStream.write(header);
writeStream.write(row1);
writeStream.write(row2);

writeStream.close();

任何人都可以帮助我。

1 个答案:

答案 0 :(得分:1)

该文件自动保存在应用程序路径中。然后我设置了标题并用响应

管道
<service>
  <name>DUMMY_APP</name>
  <displayName>My Dummy APP</displayName>
  <comment>This is a distributed app.</comment>
  <version>0.1</version> --------------This I don't want to hardcode, Can I doit?
  <components>
  ...
  </components>
</service>

在代码中我必须使用单个字符串并连接它们而不是单独的标题和行变量。即

res.setHeader('Content-disposition', 'attachment; filename=file.xls');
res.setHeader('Content-type', 'application/vnd.ms-excel');

var file = __dirname + '/file.xls';
var filestream = fs.createReadStream(file);
filestream.pipe(res);