一、读取流createReadStream
现在在data目录下有input.txt文件,其内容很多,如下
const fs = require('fs')
let readStream = fs.createReadStream('./data/input.txt');
let count = 0;
let str = ""
readStream.on('data', data => {
str += data;
count++
})
readStream.on('end', () => {
console.log("count:", count)
console.log("str:", str)
})
readStream.on('error', err => {
console.log(err)
})
二、写入流createWriteStream
结果如下:
const fs = require('fs')
let str = ""
for (let i = 0; i < 500; i++){
str+='这是写入流输出的数据\n'
}
let writeStream = fs.createWriteStream('./data/output.txt');
writeStream.write(str)
writeStream.end();//只有添上这句代码,下面的finish事件才能被监听
writeStream.on('finish', () => {
console.log('写入完成')
})
三、管道流pipe
const fs = require('fs')
let readStream = fs.createReadStream('./data/input.txt');
let writeStream = fs.createWriteStream('./data/output.txt');
//读取input.txt文件内容,并将内容写入到output.txt文件中(原内容会被替换)
readStream.pipe(writeStream)
console.log('程序执行完毕')