如何在Node.js中创建ZIP文件存档中的文件夹

3

我希望创建一个包含新文件夹的 zip 文件。我已经创建了一个 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

我该如何做呢?


你确定你正在使用的zip模块是用于编辑zip归档文件的吗?文档中是这样描述的:“一个用于在Node中实现JavaScript解压缩的模块。” - Manan Vaghasiya
我使用archiver来进行压缩。是的。 - mmu36478
2个回答

5

实际上,我刚意识到通过编辑以下行中的名称字段是相当简单的;

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

as

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

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

完美运作! - Reza Mamun

0

但是我要如何在zip文件夹中创建文件夹? - mmu36478

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接