1

.zipNode.js で JSON オブジェクトからファイルを作成しようとしています。私はそれを行うために adm-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')); 
});

Cannot read property 'toString' of undefinedの行に戻りますconsole.log

この例では使用できますが、ファイルを Amazon S3 にzip.writeZip()送信しているため、使用後にメソッドを使用して次のようなことを行う必要があります。.zip.toBuffer()adm-zip

var params = {Key: 'example.zip', Body: zip.toBuffer()};
s3bucket.upload(params, function(err, data) {...});

パッケージを正しく使用していますか?

4

1 に答える 1