Método Node.js fsPromises.rename()

El método fsPromises.rename() se usa para renombrar de forma asíncrona un archivo en la ruta anterior dada a una ruta nueva dada. Sobrescribirá el archivo de destino si ya existe. Resuelve la Promesa sin argumentos sobre el éxito.

Sintaxis:

fsPromises.rename( oldPath, newPath )

Parámetros: Este método acepta dos parámetros como se mencionó anteriormente y se describe a continuación:

  • oldPath: contiene la ruta del archivo que se debe renombrar. Puede ser una string, un búfer o una URL.
  • newPath: contiene la nueva ruta a la que se debe renombrar el archivo. Puede ser una string, un búfer o una URL.

Los siguientes ejemplos ilustran el método fsPromises.rename() en Node.js:

Ejemplo 1: este ejemplo utiliza el método fsPromises.rename() para cambiar el nombre de un archivo:

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);
    });
}

Producción:

Current filenames:
GFG.txt
GeeksforGeeks.js

File Renamed!

Current filenames:
GeeksforGeeks.js
GFG.txt

Ejemplo 2: este ejemplo usa el método fsPromises.rename() para demostrar un error durante el cambio de nombre del archivo:

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);
    });
}

Producción:

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'
}

Referencia: https://nodejs.org/api/fs.html#fs_fspromises_rename_oldpath_newpath

Publicación traducida automáticamente

Artículo escrito por nitin_sharma y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *