NodeJS 使用JSZip编辑压缩文件中的文件

vnjpjtjt  于 2022-12-12  发布在  Node.js
关注(0)|答案(2)|浏览(180)

使用JSZip,是否有办法在压缩文件中编辑文件?
我已经尝试寻找解决方案,并通过API,但我似乎不能找到一个解决方案。
任何帮助这将是伟大的!提前感谢!

rkue9o1l

rkue9o1l1#

您可以使用.file方法编辑zip中的文件。

zip.file("existing_filename", "new file content");

此方法用于添加和更新文件内容。
请确保该文件已存在。
您可以在documentation中了解更多信息。

1cklez4t

1cklez4t2#

您可以参考官方的documentation
下面是一个更完整的Node.js示例:

var fs = require("fs");
var JSZip = require("jszip");

async function zipDemo() {
    // read the existing zip file
    var zipData = fs.readFileSync("input.zip");
    var zip = await JSZip.loadAsync(zipData);
    // add a new JSON file to the zip
    zip.file("sample.json", JSON.stringify({demo:123}));
    // write out the updated zip
    zip.generateNodeStream({type:'nodebuffer', streamFiles:true})
    .pipe(fs.createWriteStream('output.zip'))
    .on('finish', function () {
        console.log("output`enter code here`.zip written.");
    });
}

zipDemo();

相关问题