读取提取数据的JavaScript

时间:2019-05-09 08:21:08

标签: javascript node.js fs

我正在开发一个节点js项目。我有一个要解压缩的zip文件,然后读取了我解压缩的zip文件中的一个文件。 我有一个问题,甚至我在回调中在调用readfile函数之前对提取函数进行了编码。 我始终没有这样的文件或目录错误,例如在提取之前已通过readfile。帮助!

这是我的代码

var unzip = require('unzip');
const fs = require('fs');
var stream =  fs.createReadStream(zipFilePath).pipe(unzip.Extract({ path: 'files/em' }));
stream.on('finish', function () {
  fs.readFileSync('files/em/data.json') ;//read the extracted file but always the extraction passed after this
});

2 个答案:

答案 0 :(得分:0)

路径应为目录'unzip.Extract({路径:'files / em'})'

答案 1 :(得分:0)

您没有看到正确的事件。 'finish'的{​​{1}}事件是在解压缩过程发生之前触发的。您应该改为监听解压缩过程中的createReadStream()事件,以确保提取完成。

'close'