2024年09月21日 建站教程
nodejs如何实现zip压缩和zip解压,下面web建站小编给大家详细介绍一下实现代码!
zip压缩代码:
// require modules
var fs = require("fs");
var archiver = require("archiver");
// create a file to stream archive data to.
var output = fs.createWriteStream(__dirname + "/example.zip");
var archive = archiver("zip", {
zlib: { level: 9 }, // Sets the compression level.
});
// pipe archive data to the file
archive.pipe(output);
// append a file from stream
var file1 = __dirname + "/file1.txt";
archive.append(fs.createReadStream(file1), { name: "file1.txt" });
// append a file from string
archive.append("string cheese!", { name: "file2.txt" });
// append a file from buffer
var buffer3 = Buffer.from("buff it!");
archive.append(buffer3, { name: "file3.txt" });
// append a file
archive.file("file1.txt", { name: "file4.txt" });
// append files from a sub-directory and naming it `new-subdir` within the archive
archive.directory("subdir/", "new-subdir");
// append files from a sub-directory, putting its contents at the root of archive
archive.directory("subdir/", false);
// append files from a glob pattern
archive.glob("subdir/*.txt");
archive.finalize();
zip解压代码:
var fs = require("fs");
var unzip = require("unzip");
fs.createReadStream("archiver-unzip.zip").pipe(
unzip.Extract({ path: "unarchive" })
);
本文链接:http://so.lmcjl.com/news/13543/