如题代码如下:
const fs = require('fs'); // 引入文件系统模块
const zlib = require('zlib'); // 引入zlib模块
// 要读取的压缩包路径
const zipFilePath = 'path/to/your/zipfile.zip';
// 要提取的文本文件名(不需要后缀)
const textFileName = 'example_text_file';
// 创建可写流对象,将解压后的数据输出到控制台或其他地方
const outputStream = process.stdout;
// 打开压缩包并进行解压操作
fs.createReadStream(zipFilePath)
.pipe(zlib.Unzip()) // 使用zlib.Unzip()函数解压缩
.on('entry', (entry) => {
if (entry.fileName === `${textFileName}.txt`) { // 判断当前条目是否为指定的文本文件
entry.pipe(outputStream); // 将该条目的内容输出到控制台
} else {
entry.autodrain(); // 丢弃非指定文本文件的条目
}
})
.on('finish', () => {
console.log(`已成功从${zipFilePath}中提取${textFileName}.txt文件的内容!`);
});