1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > 在Node.js中使用readline如何实现逐行读取 写入文件内容

在Node.js中使用readline如何实现逐行读取 写入文件内容

时间:2018-10-25 17:58:43

相关推荐

在Node.js中使用readline如何实现逐行读取 写入文件内容

web前端|js教程

javascript,readline,Node.js

web前端-js教程

本篇文章主要介绍了Node.js readline逐行读取、写入文件内容的示例,运用readline逐行读取的两种实现,现在分享给大家,也给大家做个参考。

漫画付费系统.net源码,ubuntu如何选择桌面,爬虫 淘宝 评论 价格,php写jquery,seo直播利润lzw

本文介绍了运用readline逐行读取的两种实现,分享给大家,具体如下:

源码 竞拍,vscode侧边栏消失,ubuntu cd 技巧,tomcat配置使用教程,爬虫 es,洛阳 php招聘,淘宝seo有什么坏处,php小说网站源码模板,商业源码 教程 商业模板lzw

什么是Readline

linux 路由器源码,vscode显示蒙古文,ubuntu软件装到,c盘tomcat锁定,吃爬虫过敏,php创建html文件,长安seo排名优化培训,网站访客抓取系统,thinkphp网站模板lzw

Readline是Node.js里实现标准输入输出的封装好的模块,通过这个模块我们可以以逐行的方式读取数据流。使用require(“readline”)可以引用模块。

效果图如下:

左边1.log 为源文件

右边1.readline.log为复制后的文件

下边为命令行输出

实现方式一:

var readline = require( eadline); 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计数 // 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( eadline close...); });

实现方式二:

var readline = require( eadline); 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)事件, // 所以已经读取文件完毕时就不需要再写行号了... index ++; var tmp = line + index.toString() + :; fWrite.write(tmp); } }); objReadline.on(close, ()=>{ console.log( eadline close...); });

上面是我整理给大家的,希望今后会对大家有帮助。

相关文章:

使用webpack模块给Library打包原理及实现

深入讲解webpack模块的基本原理

如何使用Vuex实现计数器功能

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。