node读取文件失败怎么处理?
用fs.createReadStream和fs.readFileSync读取文件
但是一旦文件没有找到
就会报错
2020-12-23 16:42:44,082 ERROR 25598 nodejs.ENOENTError: ENOENT: no such file or directory, open '/Users/laiyinan/Desktop/2020114/jpg/UG1NBQF1_1604470696777.jpg' (uncaughtException throw 1 times on pid:25598)ENOENTError: ENOENT: no such file or directory, open '/Users/laiyinan/Desktop/2020114/jpg/UG1NBQF1_1604470696777.jpg' (uncaughtException throw 1 times on pid:25598)
errno: -2
code: "ENOENT"
syscall: "open"
path: "/Users/laiyinan/Desktop/2020114/jpg/UG1NBQF1_1604470696777.jpg"
name: "ENOENTError"
pid: 25598
hostname: laiyinandeMacBook-Pro.local
报错以后node就会退出 也就是整个后台都崩了
尝试用try catch包住 还是一样
如何处理?
报错的截图:
回答
我没复现你的问题,我这是可以 try-catch
住的,try-catch
之后的代码也可以正常执行,node 进程也不会崩掉:
var fs = require('fs');console.log('准备执行 ...');
var fileContents;
try {
fileContents = fs.readFileSync('test.txt');
} catch (err) {
if (err && err.code === 'ENOENT') {
console.log('错误:文件未找到');
} else {
console.log('错误:其他原因');
}
}
console.log('继续执行 ...');
while (true) {
// 死循环阻止进程结束,比如 WebServer 本质上就是一个死循环不断监听请求
}
以上是 node读取文件失败怎么处理? 的全部内容, 来源链接: utcz.com/a/84239.html