1. 程式人生 > >node報表導出

node報表導出

_id rep bat lac 中文 名稱 filename ole json

var Csv = require(‘csv‘)

//const data=[{c:‘111哈s哈‘,b:2},{c:3,b:4}];//假設這個是從數據庫讀取出來的json
const data = result;
const batchname = Batch_Name; //假設這個是從數據庫獲取到的批次名稱
//如果使用中文會有亂碼,網上解決方案 使用iconv 將utf8 轉換為gbk iconv.convert(content);
// console.log(result)
Csv.stringify(result, {
columns: [‘_id‘,‘Good_Code‘]//這兒是導出列//這兒是導出列,如果註釋本行將導出所有列的值,不然只導出指定列的值
}, (err, output) => {
if(err) {
return reply({
code:400,
msg:"下載出錯!!!",
data:null
});
}
output=output.replace(/\"/g,"")//這兒替換所有的雙引號
console.log(output)
reply(new Buffer(output, ‘utf8‘).toString(‘binary‘)).type(‘text/csv‘).charset(‘ansi‘).header(‘Content-Disposition‘, `attachment;filename=${batchname}.csv`);
//var buffer=new Buffer(output,‘utf8‘);
// var str=iconv.encode(buffer,‘gb2312‘);
//reply(output)
// reply(str.toString(‘binary‘)).type(‘text/csv‘).header(‘Content-Disposition‘, `attachment;filename=${batchname}.csv`);
});

node報表導出