Stream介绍Stream是一个抽象接口,Node中很多对象都实现了这个接口。比如向http服务器发起请求的request对象是一个Stream,stdout(标准输出)。通常用于打开大型文本文件,为读取操作创建数据流。所谓大文本文件是指文本文件体积较大,无法加载到读操作的缓存中,只能分几次发送。每次发送都会触发一个数据事件,发送结束后会触发结束事件。读取流varfs=require("fs");vardata='';//创建可读流varreaderStream=fs.createReadStream('input.txt');//console.log(readerStream);//设置编码为utf8。readerStream.setEncoding('UTF8');//处理流事件-->data,end,anderrorreaderStream.on('data',function(chunk){data+=chunk;});readerStream.on('end',function(){console.log(data);});readerStream.on('error',function(err){console.log(err.stack);});console.log("程序执行完成");Writestream创建一个可写流并写入文件output.txtvarfs=require("fs");vardata='China';//创建一个可写流并写入到文件output.txt中fileoutput.txt//varwriterStream=fs.createWriteStream('output.txt',{'flags':'a'});//添加文本varwriterStream=fs.createWriteStream('output.txt');//使用utf8编码写入数据writerStream.write(data,'UTF8');//标记文件结束writerStream.end();//处理流事件-->data,end,anderrorwriterStream.on('finish',function(){console.log("Writingcompleted.");});writerStream.on('error',function(err){console.log(err.stack);});console.log("程序执行完成");pipelinestream
