在Node.js中执行解压缩文件操作方法
一、解压文件
1.安装依赖:
安装adm-zip依赖包:npm install adm-zip --save
安装iconv-lite依赖包:npm install iconv-lite --save
解压前的file文件夹结构:

update-1.0.2.zip压缩包内容:

2.在depresssFile.js文件,解压zip文件代码,方法一:(解压文件中文件名包含中文推荐使用)
代码中的:
entry.entryName = iconv.decode(entry.rawEntryName, 'utf8');
可以替换成(二选一)
entry.entryName = iconv.decode(entry.rawEntryName, 'gbk');
文件的路径可以写绝对路径也可以写相对路径,绝对路径不容易错,相对路径是depresssFile.js文件到update-1.0.2.zip解压文件的位置
// 引入依赖
const AdmZip = require('adm-zip');
const iconv = require('iconv-lite');
// 待解压zip文件所在的路径
var file = 'D:/node/LocalLibrary/file/update-1.0.2.zip';
// 解压后存放的文件夹
var target = 'D:/node/LocalLibrary/file';
// 方法1:解压zip文件
function decompressFile1(file, target) {
const zip = new AdmZip(file);
var zipEntries = zip.getEntries();
for (var i = 0; i < zipEntries.length; i++) {
var entry = zipEntries[i];
entry.entryName = iconv.decode(entry.rawEntryName, 'utf8');
}
zip.extractAllTo(target, true);
}
// 执行函数
decompressFile1(file, target);
// 导出(在其他js文件引用decompressFile函数需要添加以下代码)
module.exports = decompressFile1;解压zip文件代码,方法二:
const AdmZip = require('adm-zip');
// 待解压zip文件所在的路径
var file = 'D:/node/LocalLibrary/file/update-1.0.2.zip';
// 解压后存放的文件夹
var target = 'D:/node/LocalLibrary/file';
// 方法2:解压zip文件
function decompressFile2(file, target) {
const zip = new AdmZip(file);
zip.extractAllTo(target, true);
}
// 调用
decompressFile2(file, target);
// 导出
module.exports = decompressFile2;解压后的file文件夹结构:

二、压缩文件
1.压缩文件代码:(压缩文件的文件路径对应自己要压缩的文件夹路径即可,存放压缩文件的文件路径同理)
// 压缩文件成zip格式
const AdmZip = require('adm-zip');
// filePath: 要压缩的文件路径
var filePath = 'D:/node/LocalLibrary/file/update-1.0.2/route/route.js';
// outputPath: 压缩后的文件路径
var outputPath = 'D:/node/LocalLibrary/file/route.zip';
// 压缩文件
function compressFile(filePath, outputPath) {
const zip = new AdmZip();
zip.addLocalFile(filePath);
zip.writeZip(outputPath);
}
// 调用函数
compressFile(filePath, outputPath);
// 导出函数
module.exports = compressFile;压缩完成的目录结构:

到此这篇关于如何在Node.js中执行解压缩文件操作的文章就介绍到这了,更多相关node.js 解压缩文件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
window系统 nodejs安装opencv环境配置图文详解
这篇文章主要介绍了window系统 nodejs安装opencv环境配置,结合图文形式详细分析了window环境下 nodejs安装opencv的具体步骤、注意事项2023-04-04
使用Node.js的readline模块逐行读取并解析大文件
在Node.js环境中处理大文件是一个常见的需求,尤其是在处理日志文件、数据库导出、或任何形式的大规模文本数据时,本文将深入探讨如何使用Node.js的readline模块来实现这一功能,并讨论相关的性能优化和注意事项,需要的朋友可以参考下2024-09-09
NPM 安装cordova时警告:npm WARN deprecated minimatch@2.0.10: Pleas
这篇文章主要介绍了NPM 安装cordova时警告:npm WARN deprecated minimatch@2.0.10: Please update to minimatch 3.0.2 or higher to的相关资料,需要的朋友可以参考下2016-12-12


最新评论