【Node】Error: ENOENT: no such file or directory,解决方案

在使用node文件模块中的fs.renameSync修改文件名,报错:no such file or directory, rename 'file4.txt' -> 'lastFile.txt'
我是使用Run Code方式运行的代码,然后就报错了。错误就是说没有这个文件或者目录,但是文件和目录确实存在的,那就只能是目录不正确了 。结合分析情况,找到下面的三种解决方案。

// 1. 导入模块
const path = require('path');
const fs = require('fs');

// 2. 修改文件
fs.renameSync('file4.txt','lastFile.txt')  

// 修改语法:fs.rename('oldFile','newFile') 嗯,然后就导致上图错误。

在这里插入图片描述
解决方案1:
使用命令的方式解决:右键在文件资源管理器中显示。输入命令: node 08-文件操作常用方法.js 也可以解决。

解决方案2:
这就是采取补全路径的方案,问题是解决了,但是路径臃肿,还需要进行转义,所以不是特别的好。

	fs.renameSync('D:\\CODER\\04-node\\01-fr文件模块\\file4.txt',"D:\\CODER\\04-node\\01-fr文件模块\\lastFile.txt")

解决方案3:
我想起使用字符串拼接的方式解决这个问题,然后,报错这个oldPath必须是一个字符串类型。

	fs.renameSync(__dirname/'lastFile.txt',__dirname/'file4.txt')

在这里插入图片描述后面想起ES6字符串拼接方式,确实可以解决。

	fs.renameSync(`${
      
      __dirname}/lastFile.txt`,`${
      
      __dirname}/file4.txt`)

猜你喜欢

转载自blog.csdn.net/YBJ2022/article/details/129340537