美文网首页node
nodejs使用archive文件压缩

nodejs使用archive文件压缩

作者: 王高 | 来源:发表于2017-01-05 17:19 被阅读0次

    archiver是一个在nodejs中能跨平台实现打包功能的模块,可以打zip和tar包,是一个比较好用的三方模块。

    安装方法
    npm install --save archive
    
    代码
    var archiveFileName = localPath+'export/'+file_name+'.zip';
    var output = fs.createWriteStream(archiveFileName);
    var archive = archiver('zip', {
        store: false // Sets the compression method to STORE. 
    });
            
    // listen for all archive data to be written 
    output.on('close', function() {
        console.log(archive.pointer() + ' total bytes');
        console.log('archiver has been finalized and the output file descriptor has closed.');
    });
    // good practice to catch this error explicitly 
    archive.on('error', function(err) {
        throw err;
    });
    // pipe archive data to the file 
    archive.pipe(output);
    // append files from a directory 
    archive.directory(path,dest_path); 
    // finalize the archive (ie we are done appending files but streams have to finish yet) 
    archive.finalize();
    

    如果不设置dest_path的话,zip包内的目录会跟文件夹的path一致

    相关文章

      网友评论

        本文标题:nodejs使用archive文件压缩

        本文链接:https://www.haomeiwen.com/subject/qvmzvttx.html