首页 > 代码库 > nodejs用archiver模块压缩文件
nodejs用archiver模块压缩文件
router.get(‘/download/qiantu‘,function(req,res){ var dirname = (new Date()).getTime() var zippath = ‘./down/‘+dirname+‘.zip‘ var output = fs.createWriteStream(zippath) var ziparchiver = archiver(‘zip‘,{ store:true }) ziparchiver.pipe(output) async.mapSeries(req.session.qtimagesurl,function(item, callback){//异步下载 setTimeout(function(){ //downloadPic(item, dir+‘/‘+ (new Date()).getTime() +‘.jpg‘); ziparchiver.append(request(item),{‘name‘:‘images/‘+(new Date()).getTime() +‘.jpg‘}) callback(null, item); },400); }, function(err, results){ req.session.qtimagesurl =[] //下载完成后清空 ziparchiver.finalize() res.render(‘index‘) }); })
request(item),请求远程图片文件用request,本地文件就用fs.createReadStream
item为图片路径
var output = fs.createWriteStream(zippath)这个是压缩文件名字
{‘name‘:‘images/‘+(new Date()).getTime() +‘.jpg‘}
压缩文件解压后的命名,/前面会自动生产相应文件夹
ziparchiver.finalize()结束操作
nodejs用archiver模块压缩文件
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。