Node.js - ZLib模块

Node.js - ZLib模块 首页 / Node.js入门教程 / Node.js - ZLib模块

Node.js Zlib模块用于提供压缩和解压缩(zip和unzip)功能。它是使用Gzip和deflate / inflate实现的。

可以使用以下命令访问zlib模块:

const zlib = require('zlib');

可以通过将源流数据通过zlib流传输到目标流中来完成文件的压缩和解压缩。

压缩文件示例

让无涯教程看一下一个Node.js ZLIB模块的简单示例,该模块将文件“ input.txt”压缩为“ input.txt.gz”。

文件:zlib_example1.js.

const zlib = require('zlib');
const gzip = zlib.createGzip();
const fs = require('fs');
const inp = fs.createReadStream('input.txt');
const out = fs.createWriteStream('input.txt.gz');
inp.pipe(gzip).pipe(out);

无涯教程在桌面上有一个名为"input.txt"的文本文件。

Node.js zlib example 1

打开node.js命令提示符并运行以下代码:

node zlib_example1.js
Node.js zlib example 2

您可以看到它将在桌面上生成名为"input.txt.gz"的压缩文件。

Node.js zlib example 3

解压缩文件示例

让无涯教程看一下Node.js ZLIB模块的简单示例,该模块将文件“ input.txt.gz”解压缩为“ input2.txt”。

无涯教程网

文件:zlib_example2.js.

const zlib = require('zlib');  
const unzip = zlib.createUnzip();
const fs = require('fs');
const inp = fs.createReadStream('input.txt.gz');
const out = fs.createWriteStream('input2.txt');

inp.pipe(unzip).pipe(out);
node zlib_example2.js

现在,您将看到同一代码"input.txt"可用成"input2.txt"文件。

为了很好地理解此示例,请创建具有大量数据的“ input.txt”文件。假设它有40 kb的数据。压缩该文件后,您将获得压缩文件“ input.txt.gz”的大小仅为1 kb。解压缩“ input.txt.gz”文件后,您将获得40 kb的相同数据到“ input2.txt”文件中。

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

赵成的运维体系管理课 -〔赵成〕

微服务架构实战160讲 -〔杨波〕

iOS开发高手课 -〔戴铭〕

DDD实战课 -〔欧创新〕

Linux内核技术实战课 -〔邵亚方〕

手机摄影 -〔@随你们去〕

乔新亮的CTO成长复盘 -〔乔新亮〕

Python自动化办公实战课 -〔尹会生〕

Spring编程常见错误50例 -〔傅健〕

好记忆不如烂笔头。留下您的足迹吧 :)