我正在使用节点zlib.createGzip压缩一个巨大的字符串。
使用流,我执行以下操作。我想知道outStream什么时候写完数据,所以我可以调用一个回调。 我知道如何检测inStream'end'事件,但找不到可写outStream的等价物。
有什么建议吗?
var gzOption = {
level: zlib.Z_BEST_COMPRESSION,
memLevel: zlib.Z_BEST_COMPRESSION
}
var gzip = zlib.createGzip(gzOption)
inputStream = fs.createReadStream(filePath);
outStream = fs.createWriteStream(gzFilePath);
inputStream.pipe(gzip).pipe(outStream);
答案 0 :(得分:0)
您是否尝试过收听可写流的finish
事件?它在此处记录:https://nodejs.org/api/stream.html#stream_event_finish
当调用end()方法并且所有数据都已刷新到底层系统时,将发出此事件。