[github地址:https://github.com/ABCDdouyae...]csv2以stream方式读取.csv文件,每次读取一行数据通过2对节点流进行二次封装,通过2([options,][transformFunction][,flushFunction])options:{objectMode:true}相当于through2.objtransformFunction(chunk,encode,callback)flushFunction可以让2号或3号参数每次都通过,可以做一些dataliketransformFunction处理//将文件中的a全部替换为z输出到out.txtconstthrough2=require('through2');constfs=require('fs');fs.createReadStream('./test/enter.txt').pipe(through2(function(chunk,enc,callback){for(vari=0;i{console.log('Done')})through2.objconstthrough2=require('through2');constcsv2=require('csv2');constfs=require('fs');letall=[];fs.createReadStream('./test/enter.csv').pipe(csv2()).pipe(through2.obj(function(chunk,enc,callback)){this.push({No:chunk[0],activity:chunk[1],time:chunk[2],money:chunk[3]})callback()})).on('data',(data)=>{all.push(data)}).on('end',()=>{fs.writeFile('./test/a.js',JSON.stringify(all),()=>{控制台.log('writecompleted')})})through2.ctor可以使用此方法为需要相同过程的数据创建构造函数letFc=through2.ctor(function(chunk,enc,callback){console.log(chunk)for(vari=0;i{console.log('完成')})