1. 程式人生 > 實用技巧 >fs讀取、寫入、管道流

fs讀取、寫入、管道流

fs讀取和寫入

1.讀取

const fs = require('fs');

var readStream = fs.createReadStream('./data.txt');//讀取路徑

var count = 0;//讀取次數
var str = '';//存放資料
readStream.on('data', (data) => {
  str += data;
  count++;
});

readStream.on('end', () => {
  console.log(str);
  console.log(count);
});

readStream.on('error', (err) => {
  console.log(err);
});
//要確保根目錄裡有data.txt檔案,否則會報錯

2.寫入

const fs = require('fs');

var str = '';//儲存內容的字串

for (var i = 0; i < 500; i++) {
  str += '我是一隻小小鳥\n';
}

var writeStream = fs.createWriteStream('./data/output.txt');//寫入路徑

writeStream.write(str);//寫入的方法

//標記寫入完成
writeStream.end();//沒有這個方法的話控制檯無法輸出下面的寫入完成

writeStream.on('finish', () => {
  console.log(
'寫入完成'); }); //data目錄需要手動建立,output.txt檔案程式碼會自動生成,也可以自己建立,寫入的內容會覆蓋已有的內容。

3.管道流

const fs = require('fs');

var readStream = fs.createReadStream('./build.jpg');//讀取路徑

var writeStream = fs.createWriteStream('./data/like.jpg');//輸入路徑

readStream.pipe(writeStream);
//data目錄也需要自己建立,否則會沒有效果