有一些任务,这并不难,但我有一些麻烦。 也许有人已经有类似的问题了。
我的任务是将ZIP存档写入一些文件夹,其中包含使用NodeJS的文件和其他文件夹
我尝试使用AdmZip pakage
var AdmZip = require('adm-zip');
let Archive = new AdmZip();
Archive.addLocalFolder('Archive/filesFolder', '');
Archive.writeZip('Archive/newArchive.zip);
我必须使用'filesFolder'进行存档,而不是使用'Archive'文件夹进行存档,并且在其中我有'filesFolder'。
如果有人知道,如何只记录目标文件夹,而不是文件夹的顺序?
答案 0 :(得分:1)
您所提供的是存档/ filesFolder 作为writeZip的值,这意味着包含在zip Archive
文件夹中以及包含filesFolder
的内部。
出于测试目的,将writeZip()
的值更改为filesFolder.zip
,并将Archive
的内容压缩为当前工作目录中的filesFolder.zip
。请参阅下文(您可以复制/粘贴代码并运行它,它应该可以工作)。
var zip = new AdmZip();
// I don't know why you provided a second argument to below, I removed it
// There was nothing about it in the documentation.
zip.addLocalFolder('./Archive');
//rename the value of the following to just filesFolder.zip
zip.writeZip('filesFolder.zip');
以上内容应将Archive
的内容输出到当前工作目录filesFolder.zip
我在评论中提到过这一点,而您的推荐似乎表明您有路径问题,请尝试上面的脚本。