electron 解压zip_如何将Node.js中的.zip/.rar文件解压缩到文件夹中
的解壓與目錄結構的zip文件內袋
var Zip = require('machinepack-zip');
//解壓縮指定的.zip文件和寫解壓縮的文件/目錄作為指定的目標目錄的內容。
Zip.unzip({
source: '/Users/mikermcneil/stuff.zip',
destination: '/Users/mikermcneil/my-stuff',
}).exec(callbackSuccess, callbackFail);
下載遠程文件并解壓您可以使用此代碼:
var fs = require('fs');
var unzip = require("unzip2");
var tar = require('tar');
var zlib = require('zlib');
var path = require('path');
var mkdirp = require('mkdirp'); // used to create directory tree
var request = require("request");
var http = require('http');
var zip = require("machinepack-zip");
for (var i = 0; i < _diff.length; i++) {
request(constants.base_patch +"example.zip")
request = http.get({ host: 'localhost',
path: '/update/patchs/' + "example.zip",
port: 80,
headers: { 'accept-encoding': 'gzip,deflate' } });
request.on('response', (response) => {
var output = fs.createWriteStream(__dirname + "/tmp/" +"example.zip");
switch (response.headers['content-encoding']) {
// or, just use zlib.createUnzip() to handle both cases
case 'gzip':
response.pipe(zlib.createGunzip()).pipe(unzip.Extract({ path: __dirname }));
break;
case 'deflate':
response.pipe(zlib.createInflate()).pipe(unzip.Extract({ path: __dirname }));
break;
default:
response.pipe(output);
break;
}
})
request.on('close', function(){
zip.unzip({
source: __dirname + "/tmp/" + "example.zip",
destination: __dirname,
}).exec({
error: function (err){
alert("error")
},
success: function(){
//delete temp folder content after finish uncompress
},
});
})
}
注:去掉unnecesary模塊。
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的electron 解压zip_如何将Node.js中的.zip/.rar文件解压缩到文件夹中的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ip中继对接_IP软交换系统解决方案
- 下一篇: 西游乐园军人优待证免费吗?