如何逐行读取csv文件,修改每一行,将结果写入另一个文件
How do I read csv file line by line, modify each line, write result to another file
我最近使用 nodejs 的事件流库来解析一个巨大的 csv 文件,将结果保存到数据库中。
如何解决不仅读取文件,而且修改每一行,将结果写入新文件的任务?
它是 through 和 map 方法的某种组合,还是双工?非常感谢任何帮助。
如果您使用 event-stream 进行读取,您可以使用 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();
我最近使用 nodejs 的事件流库来解析一个巨大的 csv 文件,将结果保存到数据库中。 如何解决不仅读取文件,而且修改每一行,将结果写入新文件的任务? 它是 through 和 map 方法的某种组合,还是双工?非常感谢任何帮助。
如果您使用 event-stream 进行读取,您可以使用 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();