node:stream流

stream流:將數據的傳輸看做是水流,分段傳輸,能更好的控制,提升效率。

全部的 Stream 對象都是 EventEmitter 的實例

分類:包括了讀,寫,邊讀邊寫等數據流。
eg:fs的文件讀寫等api; 用讀文件的數據流據舉例子: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("數據讀取完成,沒有流了");
})```
相關文章
相關標籤/搜索