javascript 中的压缩文件

Zip files in javascript

我在目录“./Data/Engine/modules/xnc.zip”中有一个文件,我想解压到“./Data/Engine/modules/xnc”。

之后,我将写入文件,我需要轻松地重新压缩它!

我会创建自己的方法,但我无法创建完整的 zip 存档 zip 和解压缩模块

有没有人有什么想法?

编辑:感谢您的帮助! 遗憾的是我不能再发送问题了:(

您可以轻松使用 adm-zip 到 zip/unzip 个文件

您可以在子进程中使用 zip/unzip:

const cp = require('child_process')

exec('unzip path/to/zip_file.zip', (err) => {
  if(err) return console.log(err)
  /// Files have been unzipped
})

您可以使用 nodejs 模块 AdmZip 来压缩和解压缩文件。

安装:

npm install adm-zip

代码:

const fs = require('fs');
const AdmZip = require('adm-zip');


  var zip = new AdmZip(".sample.zip");
  zip.extractEntryTo(/*entry name*/"sample.txt", /*target path*/"D:/Whosebug", /*maintainEntryPath*/false, /*overwrite*/true);
  fs.appendFileSync('sample.txt', 'data to append');
  zip.addLocalFile('D:/Whosebug/sample.txt')
  zip.writeZip('D:/Whosebug/sample.zip')

如果你想删除解压后的文件

fs.unlinkSync('sample.txt')