我正在开发一个节点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
});
答案 0 :(得分:0)
路径应为目录'unzip.Extract({路径:'files / em'})'
答案 1 :(得分:0)
您没有看到正确的事件。 'finish'
的{{1}}事件是在解压缩过程发生之前触发的。您应该改为监听解压缩过程中的createReadStream()
事件,以确保提取完成。
'close'