这是我在nodejs中的第一个项目。我无法找到原因:
fs.readFile("/home/shaurya/Desktop/test.txt","utf-8",
function(err,filedata1){
fs.readFile(filedata1,"utf-8",function(err,filedata2){
console.log(filedata1);
console.log(filedata2);
});
});
" /home/shaurya/Desktop/test.txt"包含文件的位置作为字符串。我在外部readFile调用中读取此test.txt并将文件内容作为参数传递给内部readFile。
test.txt的内容是:/home/shaurya/Desktop/Parser.hs。
我原以为我会将输出作为console.log(filedata2)调用的字符串。
相反,我得到undefined
。
有什么想法吗?
答案 0 :(得分:1)
我有类似的问题。为了解决这个问题,您需要将.trim()方法附加到filedata1
。显然有时文本编辑器会在流结束后添加额外的空格或换行符。这应该可以解决你的问题。
您的新代码:
fs.readFile("/home/shaurya/Desktop/test.txt","utf-8",
function(err,filedata1){
fs.readFile(filedata1.trim(),"utf-8",function(err,filedata2){
console.log(filedata1);
console.log(filedata2);
});
});
//请注意filedata1