adm-zip: nodejs 中 zip文件压缩神器

2025年08月28日 13:49:24
6207
nodejs 文件操作 压缩解压

项目结构

📌 adm-zip cthackers/adm-zip

ADM - ZIP是用于NodeJS的纯JavaScript实现的ZIP数据压缩库。可通过npm安装,无其他NodeJS依赖。能解压、压缩文件,更新ZIP内容。更多详情查看wiki。

项目大小 3.01 KB
涉及语言 JavaScript 100.00%
许可协议 MIT License

ADM-Zip for NodeJS

ADM-Zip是用于NodeJS的Zip数据压缩的纯JavaScript实现的npm工具类库。

Build Status

安装

使用NPM安装:

1
$ npm install adm-zip

Electron文件系统支持如下所述。

它有什么好处?

该库允许您:

  • 将压缩文件直接复制到磁盘或存储在内存缓冲区中

  • 压缩文件将其存储到磁盘中。压缩缓冲区

  • 更新/添加新/从现有的.Zip附属机构中删除文件

内容

ADM-Zip不依赖其他nodeJS库示例

示例:

基本使用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
var AdmZip = require("adm-zip");// reading archives
var zip = new AdmZip("./my_file.zip");
var password = "1234567890";
var zipEntries = zip.getEntries(); // an array of ZipEntry records - add password parameter if entries are password protectedzipEntries.forEach(function (zipEntry) {
    console.log(zipEntry.toString()); // outputs zip entries information
    if (zipEntry.entryName == "my_file.txt") {
        console.log(zipEntry.getData().toString("utf8"));
    }
});
// outputs the content of some_folder/my_file.txt
console.log(zip.readAsText("some_folder/my_file.txt"));
// extracts the specified file to the specified location
zip.extractEntryTo(/entry name/ "some_folder/my_file.txt", /target path/ "/home/me/tempfolder", /maintainEntryPath/ false, /overwrite/ true);
// extracts everything
zip.extractAllTo(/target path/ "/home/me/zipcontent/", /overwrite/ true);// creating archives
var zip = new AdmZip();// add file directly
var content = "inner content of the file";
zip.addFile("test.txt", Buffer.from(content, "utf8"), "entry comment goes here");
// add local file
zip.addLocalFile("/home/me/some_picture.png");
// get everything as a buffer
var willSendthis = zip.toBuffer();
// or write everything to disk
zip.writeZip(/target file name/ "/home/me/files.zip");// … more examples in the wiki

有关更多详细信息, 请查看 维基百科

Electronic original-fs

ADM-Zip多年来一直支持Electronic original-fs, 没有任何用户交互, 但它会导致rollup等文件夹出现问题。为了继续支持 Original-fs 或任何其他自定义文件系统模块。可以通过ADM-Zip构造函数中的 fs 选项指定您的模块。

1
2
3
4
5
const AdmZip = require("adm-zip");
const OriginalFs = require("original-fs");// reading archives
const zip = new AdmZip("./my_file.zip", { fs: OriginalFs });
.
.

免责声明 © 2025 - 虚宝阁

本站部分源码来源于网络,版权归属原开发者,用户仅获得使用权。依据《计算机软件保护条例》第十六条,禁止:

  • 逆向工程破解技术保护措施
  • 未经许可的分发行为
  • 去除源码中的原始版权标识

※ 本站源码仅用于学习和研究,禁止用于商业用途。如有侵权, 请及时联系我们进行处理。

侵权举报请提供: 侵权页面URL | 权属证明模板

响应时效:收到完整材料后48小时内处理