1
csv文件,我有以下的Node.js代碼: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'而不僅僅是'\ r';這在你自己的測試中很明顯。 – Chad
請詳細說明 – user1175817
庫(和''data.split()')查找'\ r \ n'(回車,換行符)或'\ n'(換行符)。但是,您的csv文件正在使用'\ r'作爲行分隔符。這是不正確的;使用'\ r \ n'或'\ n'編寫你的csv文件。 – Chad