我们一般把他翻译成流,stream就是有方向的数据,由一个设备流向另一个设备,在liux中把设备抽象成文件,就可以说是从一个文件 流向另一 个文件。流的就是数据。想形成stream的有两个条件,一个是方向,另一个是数据。就像是只有一个3升的桶,能放5升的水,给你一点就消耗一点,数据一直处于流动的状态。
和readFile差不多,但是readFile是全部放入缓存,读取出来,而readStream不是,他是一点一点地输出给用户
写入数据(这个数据要么是字符串,要么是buffer,不能是数字)
const fs= require('fs');
//创建一个写数据流
const ws=fs.createWriteStream('./tst.txt');
//每隔200毫秒就产生一个数字,写进tst.txt文件里,大于7就给清掉,不要再往里写了,结束之后就触发一个finish事件。
const tid = setInterval(()=>{
const num=parseInt(Math.random()*10);
// console.log(num)
if(num<9){
ws.write(num+'');
}else{
clearInterval(tid);
ws.end();
}
},200);
ws.on('finish',()=>{
console.log('done!');
})