在使用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`)
如果觉得《【Node】Error: ENOENT: no such file or directory 解决方案》对你有帮助,请点赞、收藏,并留下你的观点哦!