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包住 还是一样

如何处理?

报错的截图:
node读取文件失败怎么处理?

回答

我没复现你的问题,我这是可以 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读取文件失败怎么处理?

以上是 node读取文件失败怎么处理? 的全部内容, 来源链接: utcz.com/a/84239.html

回到顶部