如何在 zip 文件归档器中创建文件夹 - node.js

how to create folder in zip file archiver - node.js

我想创建一个 zip 文件并在其中新建 folder。 我创建了一个 zip 文件,但无法创建文件夹。

这是我的 node.js 代码;

var archiver = require('archiver');
var zip = archiver('zip');

for(var i=0; i < files.length; i++){
     zip.append(new Buffer(files[i].data.buffer), { name: files[i].name } );    
}

例如,我想将文件夹创建为 /first/second 并在其中添加文件。

.zip
  first(folder)
     second(folder)
        file

我该怎么做?

https://www.npmjs.com/package/mkdirp

创建文件夹的节点模块

实际上,我只是通过编辑以下行中的名称字段才意识到这很简单;

zip.append(new Buffer(files[i].data.buffer), { name: files[i].name } );    

作为

zip.append(new Buffer(files[i].data.buffer), { name: "/folderName/" + files[i].name } );    

您可以将 /folderName/ 替换为您要创建的任何文件名。