Javascript TypeError:使用Node.js fs.read()的参数错误
我正试图让Javascript TypeError:使用Node.js fs.read()的参数错误,javascript,node.js,filesystems,Javascript,Node.js,Filesystems,我正试图让fs.read()正常工作,但遇到了一些问题。这是我的fread.js脚本: var fs = require('fs'); fs.open('test.txt', 'r', function (err, handle) { var f = handle; var b = new Buffer(100000); fs.read(f, b, 0, 100000, null, function (err, bytesRead) { consol
fs.read()
正常工作,但遇到了一些问题。这是我的fread.js
脚本:
var fs = require('fs');
fs.open('test.txt', 'r', function (err, handle) {
var f = handle;
var b = new Buffer(100000);
fs.read(f, b, 0, 100000, null, function (err, bytesRead) {
console.log(b.toSting("utf8", 0, bytesRead));
fs.close(f);
});
});
为什么运行时会出现以下TypeError:Bad Argument
error
$ node fread.js
fs.js:457
binding.read(fd, buffer, offset, length, position, wrapper);
^
TypeError: Bad argument
at Object.fs.read (fs.js:457:11)
at /home/max/dev/livelessons/fread.js:8:5
at Object.oncomplete (fs.js:107:15)
您应该首先检查
fs.open()
是否成功。很可能是设置了err
,而handle
设置为undefined,导致了“错误参数”错误。您应该首先检查fs.open()
是否成功。很可能是设置了err
,而handle
设置为undefined,导致了“Bad Argument”错误。问题是我给了它错误的文件名test.txt
应该是text.txt
。啊 问题是我给它的文件名不对test.txt
应该是text.txt
。啊 @Cerbrus try@Scimonster:噢,忽略了函数参数,我认为handle
没有设置在任何地方。复制f
和handle
变量是不必要的。很抱歉浪费了你所有的时间。我正在打开一个不存在的文件test.txt
应该是text.txt
。当然,这是一个错误的参数,但那个错误消息给了我一点线索,告诉我在哪里可以找到它。@Cerbrus try@scimonester:噢,忽略了函数参数,我认为handle
没有设置在任何地方。复制f
和handle
变量是不必要的。很抱歉浪费了你所有的时间。我正在打开一个不存在的文件test.txt
应该是text.txt
。当然,这是一个糟糕的论点,但那个错误消息给了我一点线索,告诉我在哪里可以找到它。