2012-11-16 292 views
0

我想压缩和解压缩文件夹。压缩和解压缩文件夹

有些库可以创建zip文件,但无法解压,因为“对我来说太复杂了”。

我可以gzip和使用zlib的模块用gunzip,我可以读焦油,但我还没有发现任何库创建焦油...

谁能告诉我我怎么能压缩和解压的文件夹?我不关心格式。

回答

1

这simples的方法是使用外部tar UTIL:

var spawn = require('child_process').spawn; 

var pathToArchive = './test.tar.gz'; 
var pathToFolder = './test'; 

var tar = spawn('tar', ['czf', pathToArchive, pathToFolder]); 
tar.on('exit', function (code) { 
     if (code === 0) { 
       console.log('completed successfully'); 
     } else { 
       console.log('error'); 
     } 
}); 
+0

我想使用JavaScript的解决方案,而不是执行一个子进程。 –

0

你有没有检查adm-zipsimilar question

+0

是的,但是adm在javascript中实现了压缩和解压缩算法。我问的是一个类似于zipstream或node-tar的库。 zipstream使用内置的zlib模块,但只创建zip,不能​​读取它们。并且node-tar只读取tars,但不能克里特......我终于使用子进程来创建和读取tar.gz了......我将打开这个问题。 –