archiver是一個在nodejs中能跨平台實現打包功能的模塊,可以打zip和tar包,是一個比較好用的三方模塊。
使用前先安裝archiver模塊。
代碼如下:
npm install archiver
建立一段代碼
代碼如下:
var archiver = require('archiver');
var fs = require('fs');
//被打包文件
var files = [
'files/001.png',
'files/002.png'
];
var zipPath = 'test.zip';
//創建一最終打包文件的輸出流
var output = fs.createWriteStream(zipPath);
//生成archiver對象,打包類型為zip
var zipArchiver = archiver('zip');
//將打包對象與輸出流關聯
zipArchiver.pipe(output);
for(var i=0; i < files.length; i++) {
console.log(files[i]);
//將被打包文件的流添加進archiver對象中
zipArchiver.append(fs.createReadStream(files[i]), {'name': files[i]});
}
//打包
zipArchiver.finalize();
非常簡單的完成打包功能。
本模塊下載地址:https://github.com/ctalkington/node-archiver