我有以下处理我的 csv 文件的函数。不幸的是,csv 文件有一列也使用逗号作为千位分隔符(我对这个导出的 csv 文件及其结构没有影响)。因此,在某一行的每个文件中,都会有一个额外的列。
在 on('data', ()) 方法中,我已经通过将两个字段连接在一起并删除冗余字段来修复此值。但最后,这仍然会导致行带有额外的列。通过这样做,第 4 列将是空的..
我想让每个字段在删除字段时都向左“移动”。有可能操纵这个吗?还是我需要一个额外的函数来处理输出并忽略所有“空”字段。
function readLines(file, options, cb){
let results = [];
fs.createReadStream(file)
.pipe(csv(options))
.on('data', (data) => {
if(Object.keys(data).length == 59){
data['2'] = data['2'] + data['3']
delete data['3']
}
results.push(data)
})
.on('end', () => {
cb(results)
});
}