node笔记(二)-fs模块下(流)

发布时间:2019-07-18 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了node笔记(二)-fs模块下(流)脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

管道流

管道提供了一个输出流到输入流的机制。通常我们用于从一个流中获取数据并将数据传
递到另外一个流中

clipboard.png
如上面的图片所示,我们把文件比作装水的桶,而水就是文件里的内容,我们用一根管子(pipe)连接两个桶使得水从一个
桶流入另一个桶,这样就慢慢的实现了大文件的复制过程。
以下实例我们通过读取一个文件内容并将内容写入到另外一个文件中。

fs.createReadStream

读取流

const fs = require('fs');
var readStream = fs.createReadStream('input.txt');
var str = ''; //流
var count = 0; //次数
readStream.on('data',function(chunk){
    str += chunk;
    count++;
})

// 读取完成
readStream.on('end',function(chunk){
    console.log(str);
    console.log(count)
})
// 读取错误
readStream.on('error',function(err){
    console.log(err)
})

clipboard.png

fs.createWriteStream

写入流

var fs = require('fs');
var data = '我是从数据库里获取的数据,我要保存起来11n';

var writerStream = fs.createWriteStream('output.txt');
for(var i=0;i<100;i++){
    writerStream.write(data,'utf8');
}
writerStream.end();
writerStream.on('finish',function(){
    console.log('写入完成')
})

writerStream.on('error',function(){
    console.log('写入失败')
})

node笔记(二)-fs模块下(流)

pipe管道

var fs = require("fs");


// 创建一个可读流
var readerStream = fs.createReadStream('input.txt');

// 创建一个可写流
var writerStream = fs.createWriteStream('output.txt');

// 管道读写操作
// 读取 input.txt 文件内容,并将内容写入到 output.txt 文件中
readerStream.pipe(writerStream);

console.log("程序执行完毕");

脚本宝典总结

以上是脚本宝典为你收集整理的node笔记(二)-fs模块下(流)全部内容,希望文章能够帮你解决node笔记(二)-fs模块下(流)所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: