node.js使用lazyparsingcsv文件
我有以下的node.js代码:
new lazy(fs.createReadStream('file.csv')) .lines .forEach(function(line){ console.log(line.toString()); });
但是,我只能通过这种方式获取最后一行数据。 csv文件的内容如下所示:
123,破碎
12345,被盗
1234567,丢失
我在这里做错了什么?
我也有相同的文件这个代码:
fs.readFile(req.files.file.path, 'utf8', function (err, data) { if (err) throw err; var lines = data.split(/\r?\n/); console.log(lines); });
其中返回以下数组:
[ '123,broken\r12345,stolen\r1234567,lost' ]
\r\n
, \n
和\r
都是有效的行结尾,所以您需要准备在所有行上进行拆分。
在进行拆分之前,将它们全部转换为一个共同的值。 就像是:
var lines = data.replace(/\r\n?/g, "\n").split("\n");