用nodejs实现txt文档的指定行数分割

最近需要将一个有数万条数据的txt文档分割成不同的小txt文件,试了网上能找到的几乎所有txt切割软件都不好使,so,自己动手丰衣足食,用nodejs实现了一个,思路很多,大家也可以自由发挥,我抛砖引玉一下。

只用到了fs模块和readline模块,都是nodejs平台自带的,无需额外安装其他第三方模块。
代码如下:

 var fs = require('fs');
 var readline = require('readline');

//定义分割后每个文件的行数
 var rows = 2000;
 //要分割的文件
 var file = 'sunqizheng.txt';
 //用来存储结果的变量
 var arr=[];

//创建文件流
 var readstream = fs.createReadStream(file);
 //创建逐行读取
 var rl = readline.createInterface({
    input:readstream
 })

rl.on('line',function(data){
    arr.push(data);
 }).on('close',function(){//结束后调用的
    for (var i=0;i<Math.ceil(arr.length/rows);i++) {
        fs.writeFile(i+'.txt',arr.slice(i*rows,i*rows+rows).join('\r\n'));
    }
 })
关于博主
骨灰级博客玩家
国内第一批90后网站站长/程序员
做过七年前端讲师
目前从事锦鲤观赏鱼电商行业
鱼贝贝锦鲤创始人
文章列表
1
将webstorm开发工具的关闭当前标签快捷键改为ctrl+w的方法
将webstorm开发工具的关闭当前标签快捷键改为ctrl+w的方法
2
神坑react native之A problem occurred configuring project ':app'报错的解决方法
神坑react native之A problem occurred configuring project ':app'报错的解决方法
3
你好,2019
你好,2019
4
被Windows BitLocker加密后的磁盘或设备,取消加密会丢失数据吗?
被Windows BitLocker加密后的磁盘或设备,取消加密会丢失数据吗?
5
没错,我是程序员,永远冲在第一线的那种
没错,我是程序员,永远冲在第一线的那种
最新评论
比比拉布
比比拉布
5月7日
太感谢了!!!!!!找了这么多的教程,只有你点出来了关键点——设计视图!!!!
Jake
Jake
3月7日
Halo 啊~麻烦更新下我的博客地址,原名:Jing Blog。麻烦更新如下: Jake Blog(后缀可以省略,也可以保留,看哪个风格适合) 网址:htt
评论于关于博主