我最近使用 nodejs 的事件流库来解析一个巨大的 csv 文件,将结果保存到数据库。如何解决不仅读取文件,而且修改每一行,将结果写入新文件的任务?它是通过和映射方法的某种组合,还是双工?非常感谢任何帮助。
问问题
565 次
1 回答
3
如果您使用事件流进行读取,则可以split()
逐行使用方法处理 csv。然后更改并将行写入新的可写流。
var fs = require('fs');
var es = require('event-stream');
const newCsv = fs.createWriteStream('new.csv');
fs.createReadStream('old.csv')
.pipe(es.split())
.pipe(
es.mapSync(function(line) {
// modify line way you want
newCsv.write(line);
}))
newCsv.end();
于 2019-06-12T21:33:51.817 回答