Node.js | ZIP files



Модуль adm-zip npm экспортирует класс AdmZip.

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

const file = new AdmZip();



Добавлять можно и файлы и папки

file.addLocalFile('./package.json');

file.addLocalFolder('./node_modules', 'node_modules');



Запись в архив может осуществиться несколькими способами, например :

1. С помощью Node.js buffer

const fs = require('fs');

fs.writeFileSync('output.zip', file.toBuffer());

2. С помощью writeZip()

file.writeZip('output.zip');



Распаковка файла

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

const file = new AdmZip('./output.zip');

file.extractAllTo('./output');