我在逐行读取文本文件的功能上遇到问题。它说我要读取的文件不存在,尽管它在我正在运行节点的文件路径中存在。可能是什么问题?
function insertUsers(auth) {
fs.readFile('emails.txt', function (err, data) {
if (err) throw err;
var person = data.toString().split("\n");
var person = data.toString().split("\n");
for (var i = 0; i < person.length(); i++) {
service.members.insert({
groupKey: 'testgroup@x.com',
resource: {
email: person[i],
role: 'MEMBER',
}
}, (err, res) => {
if (err) { return console.error('The API returned an error:', err.message); }
const user = res.data.member;
if (member.length) {
write_log('Inserted' + email + ' into student group.');
} else {
write_log('Failed to delete ' + email);
}
});
}
});
} https://i.stack.imgur.com/5UTK6.png和https://i.stack.imgur.com/iVvnA.png
答案 0 :(得分:0)
验证您正在从文件(emails.txt)所在的相同位置启动节点应用程序。根据您的方法逻辑,应该是
C:\Users\[]\source\repos\StudentGroups\StudentGroups > node main.js
您可以从代码中检查当前工作目录
console.log(process.cwd())
应该是
C:\Users\[]\source\repos\StudentGroups\StudentGroups
否则,请修改您的代码以正确指向email.txt或从正确的目录启动应用程序。
答案 1 :(得分:0)
此问题是由于我如何制作emails.txt。名称为“ emails.txt”,文件扩展名为.txt。我将文件名更改为“电子邮件”,并且可以正常工作。