node.js fs.readFile如何判断何时达到EOF

时间:2014-10-10 21:19:22

标签: node.js

我只是尝试了node.js和fs包。

使用fs.readFile()中的异步IO,回调处理程序如何知道读取器是否已达到EOF,或者它只是耗尽了读取缓冲区大小,是换出了还是其他任何条件?询问时也没有可见的文件句柄。这是一个错误的节点成语吗?

非常感谢。 迪内希

-

@Abe。所以我改变了代码,假设我将一次性完成整个过程,但是使用大文件命中错误。但在所有其他情况下,它运行得非常完美

"buffer.js:194
      this.parent = new SlowBuffer(this.length);
                    ^
RangeError: length > kMaxLength
    at new Buffer (buffer.js:194:21)
    at fs.js:225:16
    at Object.oncomplete (fs.js:107:15)"

1 个答案:

答案 0 :(得分:4)

fs.readFile()缓冲文件的全部内容(读取直到EOF)。如果读取文件时出错,则会设置err参数。否则,您将获取文件的内容作为回调的第二个参数。