我只是尝试了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)"
答案 0 :(得分:4)
fs.readFile()
缓冲文件的全部内容(读取直到EOF)。如果读取文件时出错,则会设置err
参数。否则,您将获取文件的内容作为回调的第二个参数。