我試圖從Node.js中的JSON對象創建.zip
文件。我使用adm-zip to do that但是我無法使其與此代碼的工作:使用adm-zip從JSON對象創建zip文件
var admZip = require('adm-zip');
var zip = new admZip();
zip.addFile(Date.now() + '.json', new Buffer(JSON.stringify(jsonObject));
var willSendthis = zip.toBuffer();
fs.writeFileSync('./example.zip', willSendthis);
此代碼創建example.zip
,但我不能夠提取它,我試圖用一個.zip
提取也與此代碼:
var admZip = require('adm-zip');
var zip = new admZip("./example.zip");
var zipEntries = zip.getEntries(); // an array of ZipEntry records
zipEntries.forEach(function(zipEntry) {
console.log(zipEntry.data.toString('utf8'));
});
它在與console.log
行返回Cannot read property 'toString' of undefined
。
我可以用zip.writeZip()
這個例子,但我發送.zip
文件到Amazon S3因此,我需要使用方法.toBuffer()
使用adm-zip
後做這樣的事情:
var params = {Key: 'example.zip', Body: zip.toBuffer()};
s3bucket.upload(params, function(err, data) {...});
我不看看有什麼不對,我是否正確使用軟件包?
您可以閱讀'example.zip' JSON文件寫入磁盤之後? – hassansin