1. 程式人生 > 其它 >流式檔案寫入

流式檔案寫入

同步,非同步,簡單檔案的寫入都不適合大檔案的寫入,主要時效能較差,容易導致記憶體溢位

var fs = require('fs')
/*流式檔案寫入*/
//建立一個可寫流
var ws = fs.createWriteStream('hello.txt')
//可以通過監聽流的open和close事件來監聽流的開啟和關閉,不監聽也可以
ws.once('open', function () {    //once可以為物件繫結一個一次性的事件,該事件會在觸發一次後自動失效
console.log('流打開了')
})
ws.once('close', function () {    //此處只是繫結監聽,並沒有關閉流
console.log('流關閉了')
})
//通過ws向檔案中輸出內容
ws.write('通過可寫流寫入的內容。')
ws.write('只要流存在,就可以持續寫入')
//關閉流
ws.end()
//ws.close()    //輸送一次就關閉,不能使用

//流關閉後不能繼續寫入
ws.write('會報錯')


var ws = fs.createWriteStream(path[, options])
  path    路徑
  options    配置選項
該方法返回一個物件,用變數接收後通過該物件的方法進行對檔案的操作

ws.write('')
ws.end()
ws.once(event, function(){})