El método fs.futimes() se usa para cambiar de forma asíncrona las marcas de tiempo de modificación y acceso del descriptor de archivo dado. Las marcas de tiempo se pueden especificar mediante un número, una string o un objeto de fecha. Se arrojaría un error si la marca de tiempo no se puede convertir a un número adecuado, o si es NaN, Infinity o -Infinity.
Sintaxis:
fs.futimes( fd, atime, mtime, callback )
Parámetros: este método acepta cuatro parámetros, como se mencionó anteriormente y se describe a continuación:
- fd: es un número entero que denota el descriptor de archivo del archivo cuyas marcas de tiempo se deben cambiar.
- atime: Es un objeto de número, string o fecha que denota la nueva marca de tiempo de acceso que se establecerá.
- mtime: Es un objeto de número, string o fecha que denota la nueva marca de tiempo de modificación que se establecerá.
- devolución de llamada: Es una función que sería llamada cuando se ejecuta el método.
- err: es un error que se lanzaría si el método falla.
Los siguientes ejemplos ilustran el método fs.futimes() en Node.js:
Ejemplo 1:
// Node.js program to demonstrate the // fs.futimes() method // Import the filesystem module const fs = require('fs'); // Get the file descriptor of the file const fd = fs.openSync("example_file.txt", "r+"); console.log("Details before changing time:"); // Get the stats object of the file prevStats = fs.statSync("example_file.txt"); // Access the modified and access time of the file console.log("Modification Time:", prevStats.mtime); console.log("Access Time:", prevStats.atime); // Get the current time to change the timestamps let changedModifiedTime = new Date(); let changedAccessTime = new Date(); // Use the futimes() function to assign // the new timestamps to the file descriptor fs.futimes(fd, changedAccessTime, changedModifiedTime, () => { // Get the stats object of the file console.log("\nDetails after changing time:"); // Get the stats object of the file changedStats = fs.statSync("example_file.txt"); // Access the changed modified and access time of the file console.log("Changed Modification Time:", changedStats.mtime); console.log("Changed Access Time:", changedStats.atime); });
Producción:
Details before changing time: Modification Time: 2020-05-25T15:59:10.807Z Access Time: 2020-05-25T15:59:10.807Z Details after changing time: Changed Modification Time: 2020-05-25T16:01:34.915Z Changed Access Time: 2020-05-25T16:01:34.915Z
Ejemplo 2:
// Node.js program to demonstrate the // fs.futimes() method // Import the filesystem module const fs = require('fs'); // Get the file descriptor of the file const fd = fs.openSync("example_file.txt", "r+"); console.log("Details before changing time:"); // Get the stats object of the file prevStats = fs.statSync("example_file.txt"); // Access the modified and access time of the file console.log("Modification Time:", prevStats.mtime); console.log("Access Time:", prevStats.atime); // Get the current time to change the timestamps let changedModifiedTime = new Date("April 01, 2019 04:13:20"); let changedAccessTime = new Date("April 12, 2019 08:12:40"); // Use the futimes() function to assign // the new timestamps to the file descriptor fs.futimes(fd, changedAccessTime, changedModifiedTime, () => { // Get the stats object of the file console.log("\nDetails after changing time:"); // Get the stats object of the file changedStats = fs.statSync("example_file.txt"); // Access the changed modified and access time of the file console.log("Changed Modification Time:", changedStats.mtime); console.log("Changed Access Time:", changedStats.atime); });
Producción:
Details before changing time: Modification Time: 2020-05-25T16:06:28.977Z Access Time: 2020-05-25T16:06:28.977Z Details after changing time: Changed Modification Time: 2019-03-31T22:43:20.000Z Changed Access Time: 2019-04-12T02:42:40.000Z
Referencia: https://nodejs.org/api/fs.html#fs_fs_futimes_fd_atime_mtime_callback
Publicación traducida automáticamente
Artículo escrito por sayantanm19 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA