fsPromises.rename()方法用于将给定旧路径下的文件异步重命名为给定新路径。如果目标文件已经存在,它将覆盖目标文件。它以无争议的方式解决了承诺。
用法:
fsPromises.rename( oldPath, newPath )
参数:该方法接受上述和以下所述的两个参数:
- oldPath:它包含必须重命名的文件的路径。它可以是字符串,缓冲区或URL。
- newPath:它包含必须重命名文件的新路径。它可以是字符串,缓冲区或URL。
以下示例说明了Node.js中的fsPromises.rename()方法:
范例1:本示例使用fsPromises.rename()方法重命名文件:
Node.js
// Node.js program to demonstrate the
// fsPromises.rename() method
// Import filesystem module
const fs = require('fs');
const fsPromises = require('fs').promises;
// List all the filenames before renaming
getCurrentFilenames();
(async function main() {
try {
// Rename the file
fsPromises.rename('GFG.txt', 'GeeksforGeeks.txt')
console.log("\nFile Renamed!\n");
// List all the filenames after renaming
getCurrentFilenames();
} catch (err) {
console.error(err);
}
})();
// Function to get current filenames
// in directory
function getCurrentFilenames() {
console.log("Current filenames:");
fs.readdirSync(__dirname).forEach(file => {
console.log(file);
});
}
输出:
Current filenames: GFG.txt GeeksforGeeks.js File Renamed! Current filenames: GeeksforGeeks.js GFG.txt
范例2:本示例使用fsPromises.rename()方法演示文件重命名过程中的错误:
Node.js
// Node.js program to demonstrate the
// fsPromises.rename() method
// Import filesystem module
const fs = require('fs');
const fsPromises = require('fs').promises;
(async function main() {
try {
// List all the filenames before renaming
getCurrentFilenames();
// Rename the file
fsPromises.rename('GeeksforGeeks.txt', 'geeks.txt')
// List all the filenames after renaming
console.log("\nFile Renamed\n");
// List all the filenames after renaming
getCurrentFilenames();
}
catch (err) {
console.error(err);
}
})();
// Function to get current filenames
// in directory
function getCurrentFilenames() {
console.log("Current filenames:");
fs.readdirSync(__dirname).forEach(file => {
console.log(file);
});
}
输出:
Current filenames: index.js package.json world.txt [Error:ENOENT:no such file or directory, rename 'G:\tutorials\nodejs-fs-rename\GeeksforGeeks.txt' -> 'G:\tutorials\nodejs-fs-rename\geeks.txt'] { errno:-4058, code:'ENOENT', syscall:'rename', path:'G:\\tutorials\\nodejs-fs-rename\\GeeksforGeeks.txt', dest:'G:\\tutorials\\nodejs-fs-rename\\geeks.txt' }
参考: https://nodejs.org/api/fs.html#fs_fspromises_rename_oldpath_newpath
相关用法
- Node.js console.timeLog()用法及代码示例
- Node.js GM chop()用法及代码示例
- Node.js GM drawArc()用法及代码示例
- Node.js GM edge()用法及代码示例
- Node.js GM drawLine()用法及代码示例
- Node.js GM bordercolor()用法及代码示例
- Node.js GM border()用法及代码示例
- Node.js GM drawPolyline()用法及代码示例
- Node.js GM channel()用法及代码示例
- Node.js GM whitePoint()用法及代码示例
- Node.js GM operator()用法及代码示例
- Node.js GM transparent()用法及代码示例
- Node.js GM drawRectangle()用法及代码示例
注:本文由纯净天空筛选整理自nitin_sharma大神的英文原创作品 Node.js | fsPromises.rename() Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。