From 3888f9a1fef32b9026cc67132b031e0372ce3990 Mon Sep 17 00:00:00 2001 From: mos Date: Sat, 16 Feb 2019 15:47:21 +0800 Subject: [PATCH] use buffser instead of string --- commonjs/excelParser.js | 25 ++++++++++++++++--------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/commonjs/excelParser.js b/commonjs/excelParser.js index e45290d..7bda890 100644 --- a/commonjs/excelParser.js +++ b/commonjs/excelParser.js @@ -58,16 +58,23 @@ function extractFiles(path, sheet) { .on('entry', function (entry) { var file = files[entry.path]; if (file) { - var contents = ''; - filePromises.push(new Promise(function (resolve) { - entry.on('data', function (data) { - return contents += data.toString(); - }).on('end', function () { - files[file].contents = contents; - resolve(); - }); + //let contents = ''; + let buffer = new Buffer(""); + filePromises.push(new Promise((resolve) => { + entry + //.on('data', data => contents += data.toString()) + .on('data', (data) => { + buffer = Buffer.concat([buffer,data]) + //contents += data.toString(); + }) + .on('end', () => { + //files[file].contents = contents; + files[file].contents = buffer.toString(); + //console.log("extractFiles",entry.path,buffer.length,contents.length,files[file].contents.length) + resolve(); + }); })); - } else { + } else { entry.autodrain(); } });