【发布时间】:2016-10-13 17:22:30
【问题描述】:
我正在使用 node-csv 解析一堆带有节点的 csv 文件。我有数百个需要解析的文件,但是,我需要为每个文件添加一个标题行以使用解析器中的“列”选项。 columns 选项将每一行解析为一个对象,标题行用作对象键,但是要使此选项起作用,您当然需要标题行。
通过查看文档,我的直觉告诉我,我应该能够通过添加行的转换函数来管道我的节点流,但是我很难在不更改文件中现有数据的情况下完成这项工作.
这就是我的想法,但是如何将一行写入“零”列?
let createStream = function() {
let stream = fs.createReadStream(transPath+'/'+file, {encoding: 'utf8'});
let parser = csv.parse({columns: true});
let transform = csv.transform(function(record, doneTransform){
//check if first zero row,
//Add header column.
doneTransform();
});
return stream.pipe(transform).pipe(parser);
};
createStream().on('data', function(transaction){
//do stuff with object data
});
【问题讨论】:
标签: javascript node.js csv