NodeJS中的流无法触发end事件
我在使用scissors这个包时,读入一个PDF的stream,然后将这个stream生成TXT stream,发现这个stream是老式的stream,然后使用 var Readable=require(‘stream’).Readable(); var srcStream=new Readable().wrap(stream);将这个stream包装成readable后还是在读取内容完毕后不会触发end事件,不知道为什么,求大神支招,非常感激! 大致的代码如下:
4 回复
刚测试了一下,表示会触发end事件,代码如下:
'use strict';
const Readable = require('stream').Readable;
const fs = require('fs');
let srcStream = new Readable().wrap(fs.createReadStream('test.html'));
let chunks = [];
srcStream.on('data', data => chunks.push(data));
srcStream.on('end', _ => console.log(Buffer.concat(chunks).toString('utf8')));