use*_*782 6 zip unzip node.js jszip
我正在编写一些节点代码,并使用jszip压缩和解压缩一些文件.我知道如何压缩,但无法弄清楚如何解压缩或解压缩.stackoverflow上有几个链接不起作用.有人有任何解决方案?以下是我的尝试
var fs = require('fs');
var JSZip = require('jszip');
var zipName = "C:/test.zip";
var unzip = "C:/unzip";
fs.readFile(zipName, function (err, data) {
if (err) throw err;
var zip = new JSZip();
zip.folder(unzip).load(data);
});
Run Code Online (Sandbox Code Playgroud)
JSZip没有在磁盘上写文件的方法.要做到这一点,你需要迭代zip.files:
var path = require("path");
Object.keys(zip.files).forEach(function(filename) {
var content = zip.files[filename].asNodeBuffer();
var dest = path.join(unzip, filename);
fs.writeFileSync(dest, content);
}
Run Code Online (Sandbox Code Playgroud)
在一个zip文件中,文件夹用正斜杠'/'表示,我认为这path.join()将创建一个正确的路径,但我无法测试这个.
| 归档时间: |
|
| 查看次数: |
2641 次 |
| 最近记录: |