node-zip - Zip/Unzip files ported from JSZip
npm install node-zipvarfs=require('fs');varpath=require('path');// The zip library needs to be instantiated:varzip=newrequire('node-zip')();// You can add multiple files by performing subsequent calls to zip.file();// the first argument is how you want the file to be named inside your zip,// the second is the actual data:zip.file('file1.txt',fs.readFileSync(path.join(__dirname,'file1.txt')));zip.file('file2.txt',fs.readFileSync(path.join(__dirname,'file2.txt')));vardata=zip.generate({base64:false,compression: 'DEFLATE'});// it's important to use *binary* encodefs.writeFileSync('test.zip',data,'binary');You can also load directly:
require('node-zip');varzip=newJSZip(data,options)...varzip=newrequire('node-zip')();zip.file('test.file','hello there');vardata=zip.generate({base64:false,compression:'DEFLATE'});console.log(data);// ugly datavarzip=newrequire('node-zip')(data,{base64: false,checkCRC32: true});console.log(zip.files['test.file']);// hello therevarfs=require("fs");zip.file('test.txt','hello there');vardata=zip.generate({base64:false,compression:'DEFLATE'});fs.writeFileSync('test.zip',data,'binary');npm install -g jasmine-node
jasmine-node testnode-zip uses JSZip, please refer to their website for further information: http://stuartk.com/jszip/
David Duponchel @dduponchel
Feel free to send your pull requests and contribute to this project
MIT