node:stream流

stream流:将数据的传输看作是水流,分段传输,能更好的控制,提高效率。

所有的 Stream 对象都是 EventEmitter 的实例

分类:包括了读,写,边读边写等数据流。
eg:fs的文件读写等api; 用读文件的数据流据举例子:

//自主定义读文件的流
let freadStream = fs.createReadStream('./test.txt',{
 //每次读取字节数
 highWaterMark:3,
    //读取模式
 flags:'r', //默认 'r' 
 autoClose:true, //默认读取完毕后自动关闭
 start:0, //读取文件开始位置
 // end:3, //流是闭合区间 包含start也含end
 encoding:'utf8' //默认null
})
//上面创建了一个读取test.data的数据流,现在让他运行起来
freadStream.on('open',()=>{
 console.log('流开始打开文件');
})
freadStream.on('data',(e)=>{
 console.log('持续有数据被读取出来:',e);
})
freadStream.on('end',()=>{
 console.log("数据读取完成,没有流了");
})```

你可能感兴趣的:(node.js)