node上好用的压缩解压缩包
发布于 7 年前 作者 lpm0205 8912 次浏览 来自 问答

试了一下午的压缩和解压缩, 基本上把能查到的所有方法都试了一下 ,还是没有解决问题,adm-zip解压缩一直报错 node-unzip 在解压小文件时无问题,解压项目文件时谜之出错 ,大家有没有什么好的解决方案

8 回复
// fs.createReadStream('public/images/img.zip').pipe(unzip.Extract({ path:'public/images/out'}));
// console.log("success-sipImagesUnzip!");
var filepath = path.dirname(__dirname) + '/public/images/out/';
var zipfile = path.dirname(__dirname) + '/public/images/img.zip';
var unzip = new AdmZip(zipfile);
unzip.extractAllTo(filepath, /*overwrite*/true);
console.log("success-sipImagesUnzip!")


这是两种不同的写法 上面注释的是node-unzip的写法 下面是adm-zip的写法

压缩文件中文件名的编码可能需要模块兼容

child_process 直接调系统的zip来压缩解压缩

@Binaryify child_process 应该怎么使用呢 不太了解这方面的知识

@lpm0205 const exec=require(‘child_process’).exec exec(‘zip FileName.zip DirName’) exec可以执行bash的

解压缩的话推荐 decompress,Promise 接口,tar、tar.gz、gzip 都支持。压缩的话 tar.gz 格式推荐 tar.gz, 同 Promise 接口

回到顶部