您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

readline怎样逐行读取并写入内容

2025/5/23 9:13:11发布22次查看
这次给大家带来readline怎样逐行读取并写入内容,readline逐行读取并写入内容的注意事项有哪些,下面就是实战案例,一起来看一下。
本文介绍了运用readline逐行读取的两种实现,分享给大家,具体如下:
什么是readline
readline是node.js里实现标准输入输出的封装好的模块,通过这个模块我们可以以逐行的方式读取数据流。使用require(“readline”)可以引用模块。
效果图如下:
左边1.log 为源文件
右边1.readline.log为复制后的文件
下边为命令行输出
实现方式一:
var readline = require('readline');  var fs = require('fs');  var os = require('os');  var freadname = './1.log';  var fwritename = './1.readline.log';  var fread = fs.createreadstream(freadname);  var fwrite = fs.createwritestream(fwritename);  var objreadline = readline.createinterface({   input: fread,  // 这是另一种复制方式,这样on('line')里就不必再调用fwrite.write(line),当只是纯粹复制文件时推荐使用  // 但文件末尾会多算一次index计数 sodino.com  // output: fwrite,  // terminal: true  });      var index = 1;  objreadline.on('line', (line)=>{   var tmp = 'line' + index.tostring() + ':' + line;   fwrite.write(tmp + os.eol); // 下一行   console.log(index, line);   index ++;  });    objreadline.on('close', ()=>{   console.log('readline close...');  });
实现方式二:
var readline = require('readline');  var fs = require('fs');  var os = require('os');    var freadname = './1.log';  var fwritename = './1.readline.log';  var fread = fs.createreadstream(freadname);  var fwrite = fs.createwritestream(fwritename);    var enablewriteindex = true;  fread.on('end', ()=>{   console.log('end');   enablewriteindex = false;  });    var objreadline = readline.createinterface({   input: fread,   output: fwrite,   terminal: true  });    var index = 1;  fwrite.write('line' + index.tostring() +':');  objreadline.on('line', (line)=>{   console.log(index, line);   if (enablewriteindex) {   // 由于readline::output是先写入后调用的on('line')事件,   // 所以已经读取文件完毕时就不需要再写行号了... sodino.com   index ++;   var tmp = 'line' + index.tostring() + ':';   fwrite.write(tmp);   }  });  objreadline.on('close', ()=>{   console.log('readline close...');  });
相信看了本文案例你已经掌握了方法,更多精彩请关注其它相关文章!
推荐阅读:
vuex的mutations与actions使用详解
vue中占位符如何使用
以上就是readline怎样逐行读取并写入内容的详细内容。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product