欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

在Node.js中執(zhí)行解壓縮文件操作方法

 更新時(shí)間:2024年10月28日 09:21:18   作者:梅禿頭  
本文主要介紹了如何在Node.js中進(jìn)行解壓縮文件操作,本文也提供了壓縮文件的方法,壓縮文件的文件路徑需要對(duì)應(yīng)自己要壓縮的文件夾路徑,通過本文的介紹,可以幫助讀者更好地理解和使用Node.js進(jìn)行解壓縮文件操作

一、解壓文件

1.安裝依賴:

安裝adm-zip依賴包:npm install adm-zip --save

安裝iconv-lite依賴包:npm install iconv-lite --save

解壓前的file文件夾結(jié)構(gòu):

update-1.0.2.zip壓縮包內(nèi)容:

2.在depresssFile.js文件,解壓zip文件代碼,方法一:(解壓文件中文件名包含中文推薦使用)

代碼中的:

entry.entryName = iconv.decode(entry.rawEntryName, 'utf8');

可以替換成(二選一)

entry.entryName = iconv.decode(entry.rawEntryName, 'gbk');

文件的路徑可以寫絕對(duì)路徑也可以寫相對(duì)路徑,絕對(duì)路徑不容易錯(cuò),相對(duì)路徑是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);
}
// 執(zhí)行函數(shù)
decompressFile1(file, target);
// 導(dǎo)出(在其他js文件引用decompressFile函數(shù)需要添加以下代碼)
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);
}
// 調(diào)用
decompressFile2(file, target);
// 導(dǎo)出
module.exports = decompressFile2;

解壓后的file文件夾結(jié)構(gòu):

二、壓縮文件

1.壓縮文件代碼:(壓縮文件的文件路徑對(duì)應(yīng)自己要壓縮的文件夾路徑即可,存放壓縮文件的文件路徑同理)

// 壓縮文件成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);
}
// 調(diào)用函數(shù)
compressFile(filePath, outputPath);
// 導(dǎo)出函數(shù)
module.exports = compressFile;

壓縮完成的目錄結(jié)構(gòu): 

到此這篇關(guān)于如何在Node.js中執(zhí)行解壓縮文件操作的文章就介紹到這了,更多相關(guān)node.js 解壓縮文件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • node.js使用cluster實(shí)現(xiàn)多進(jìn)程

    node.js使用cluster實(shí)現(xiàn)多進(jìn)程

    本文給大家詳細(xì)介紹了nodejs使用cluster模塊實(shí)現(xiàn)多進(jìn)程的方法和步奏,非常的細(xì)致全面,有需要的小伙伴可以參考下
    2016-03-03
  • nodejs通過釘釘群機(jī)器人推送消息的實(shí)現(xiàn)代碼

    nodejs通過釘釘群機(jī)器人推送消息的實(shí)現(xiàn)代碼

    最近在用 nodejs 寫爬蟲,之前的 nodejs 爬蟲代碼用 js 寫的,感覺可維護(hù)性太差,也沒有智能提示,于是把js改用ts(typescript)重寫一下,提升代碼質(zhì)量。接下來通過本文給大家分享nodejs通過釘釘群機(jī)器人推送消息,需要的朋友參考下吧
    2019-05-05
  • Node.js的基本知識(shí)簡(jiǎn)單匯總

    Node.js的基本知識(shí)簡(jiǎn)單匯總

    本文主要給大家簡(jiǎn)單介紹了Node.js的基本知識(shí),包括概念、特點(diǎn)、歷史、案例的相關(guān)資料,需要的朋友可以參考下
    2016-09-09
  • 深入剖析Node.js cluster模塊

    深入剖析Node.js cluster模塊

    Node的單線程設(shè)計(jì)已經(jīng)沒法更充分的"壓榨"機(jī)器性能了,Node新增了一個(gè)內(nèi)置模塊cluster,它可以通過一個(gè)父進(jìn)程管理一坨子進(jìn)程的方式來實(shí)現(xiàn)集群的功能,這篇文章主要介紹了深入剖析Node.js cluster模塊,感興趣的小伙伴們可以參考一下
    2018-05-05
  • 初識(shí)NodeJS服務(wù)端開發(fā)入門(Express+MySQL)

    初識(shí)NodeJS服務(wù)端開發(fā)入門(Express+MySQL)

    本篇文章主要介紹了初識(shí)NodeJS服務(wù)端開發(fā)入門(Express+MySQL),可以對(duì)數(shù)據(jù)庫(kù)中的一張表進(jìn)行簡(jiǎn)單的CRUD操作,有興趣的可以了解一下。
    2017-04-04
  • nodejs實(shí)現(xiàn)連接mongodb數(shù)據(jù)庫(kù)的方法示例

    nodejs實(shí)現(xiàn)連接mongodb數(shù)據(jù)庫(kù)的方法示例

    這篇文章主要介紹了nodejs實(shí)現(xiàn)連接mongodb數(shù)據(jù)庫(kù)的方法,結(jié)合實(shí)例形式分析了nodejs針對(duì)mongodb數(shù)據(jù)庫(kù)的簡(jiǎn)單連接、查詢及關(guān)閉等操作技巧,需要的朋友可以參考下
    2018-03-03
  • NodeJS前端自動(dòng)化部署實(shí)現(xiàn)實(shí)例詳解

    NodeJS前端自動(dòng)化部署實(shí)現(xiàn)實(shí)例詳解

    這篇文章主要為大家介紹了NodeJS前端自動(dòng)化部署實(shí)現(xiàn)實(shí)例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-10-10
  • nodeJs實(shí)現(xiàn)基于連接池連接mysql的方法示例

    nodeJs實(shí)現(xiàn)基于連接池連接mysql的方法示例

    這篇文章主要介紹了nodeJs實(shí)現(xiàn)基于連接池連接mysql的方法,結(jié)合具體實(shí)例形式分析了nodejs連接池操作mysql數(shù)據(jù)庫(kù)連接的實(shí)現(xiàn)與使用技巧,需要的朋友可以參考下
    2018-02-02
  • 關(guān)于npm install過程失敗的幾種處理方式

    關(guān)于npm install過程失敗的幾種處理方式

    這篇文章主要介紹了關(guān)于npm install過程失敗的幾種處理方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • pnpm的安裝和使用指南(推薦!)

    pnpm的安裝和使用指南(推薦!)

    如果你覺得npm比較慢,又不想用yarn,那么pnpm是一個(gè)很好的選擇,下面這篇文章主要給大家介紹了關(guān)于pnpm的安裝和使用的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-05-05

最新評(píng)論