【发布时间】:2014-09-13 22:05:27
【问题描述】:
您好,我正在尝试简单地流式传输 csv 文件的内容,但遇到了一些非常烦人的问题。 Bellow 是我的代码,我的挫败感隐藏在我的 cmets 中。
var fileReadStream = fs.createReadStream(inFile);
// For some reason readable will yield only the last line of my file
// and if I listen for 'data' I still just get the last line of my file
fileReadStream.on('readable', function() {
process.stdout.write(fileReadStream.read().toString());
}).on('end', function() {
i ++;
next();
});
对此的任何帮助都会很棒。另外,我对如何正确制作管道感到非常困惑。根据我的解释,我觉得对于管道对象,管道将简单地写入管道内的对象,然后在该对象上调用 read。但是我无法让管道正常工作。也许当我解决这个问题时,我可以更容易地弄清楚管道。谢谢。
【问题讨论】:
-
是否有可能将整个文件加载到缓冲区中,而您在输出时只看到最后一行?添加一个错误片段以确保它不会引发错误。此外,您可能希望了解使用 csv 库来处理 csv 文件。
标签: javascript node.js file stream fs