用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
神坑react native之unable to load script from assets ‘index.android bundle’ ,make sure your bundle is packaged correctly or youu’re runing a packager server
神坑react native之unable to load script from assets ‘index.android bundle’ ,make sure your bundle is packaged correctly or youu’re runing a packager server
2
Node.js+Koa2+art-template ctx.render()方法提示Not Found解决方案
Node.js+Koa2+art-template ctx.render()方法提示Not Found解决方案
3
程序员的进阶之路
程序员的进阶之路
4
强夺小米笔记本丢失的Windows系统管理员权限
强夺小米笔记本丢失的Windows系统管理员权限
5
potplayer播放器没有声音的解决方案
potplayer播放器没有声音的解决方案
最新评论
比比拉布
比比拉布
5月7日
太感谢了!!!!!!找了这么多的教程,只有你点出来了关键点——设计视图!!!!
Jake
Jake
3月7日
Halo 啊~麻烦更新下我的博客地址,原名:Jing Blog。麻烦更新如下: Jake Blog(后缀可以省略,也可以保留,看哪个风格适合) 网址:htt
评论于关于博主