var fs = require("fs");
var JSZip = require("jszip");
// read a zip file
fs.readFile("project.zip", function(err, data) {
if (err) throw err;
JSZip.loadAsync(data).then(function (zip) {
files = Object.keys(zip.files);
console.log(files);
});
});
To read the contents of a file in the zip archive you can use the following.
// read a zip file
fs.readFile("project.zip", function(err, data) {
if (err) throw err;
JSZip.loadAsync(data).then(function (zip) {
// Read the contents of the 'Hello.txt' file
zip.file("Hello.txt").async("string").then(function (data) {
// data is "Hello World!"
console.log(data);
});
});
});
并从服务器下载zip文件:
request('yourserverurl/helloworld.zip')
.pipe(fs.createWriteStream('helloworld.zip'))
.on('close', function () {
console.log('File written!');
});
3条答案
按热度按时间pb3s4cty1#
你应该使用jszip npm包。这允许您快速读取zip文件。
示例:
并从服务器下载zip文件:
bzzcjhmw2#
使用
npm install node-stream-zip
得到这样的信息
希望有帮助:-)
pprl5pva3#
**场景一:**如果API响应为压缩文件(E.x.很少有Microsoft Graph API响应是压缩文件),您可以使用npm unzipper和request包将数据提取到对象。
参考:read-zipped-file-content-using-nodejs
**场景2:**如果您想从服务器(即本地)读取压缩文件。