Open In App

Node.js fs.utimes() Method

Last Updated : 08 Oct, 2021
Comments
Improve
Suggest changes
Like Article
Like
Report
The fs.utimes() method is used to asynchronously change the modification and access timestamps of a file. The timestamps can be specified using a number, string, or Date object. An error would be thrown if the timestamp cannot be converted to a proper number, or is NaN, Infinity or -Infinity. Syntax:
fs.utimes( path, atime, mtime, callback )
Parameters: This method accepts four parameters as mentioned above and described below:
  • path: It is a string that denotes the path of the file whose timestamps have to be changed.
  • atime: It is number, string or Date object that denotes the new access timestamp to be set.
  • mtime: It is number, string or Date object that denotes the new modification timestamp to be set.
  • callback: It is a function that would be called when the method is executed.
    • err: It is an error that would be thrown if the method fails.
Below examples illustrate the fs.utimes() method in Node.js: Example 1: javascript
// Node.js program to demonstrate the
// fs.utimes() method

// Import the filesystem module
const fs = require('fs');

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 newModifiedTime = new Date();
let newAccessTime = new Date();

// Use the utimes() function to assign
// the new timestamps
fs.utimes(
  "example_file.txt",
  newAccessTime,
  newModifiedTime,
  () => {
    // 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);
  }
);
Output:
Details before changing time:
Modification Time: 2017-01-24T23:41:00.000Z
Access Time: 2018-02-26T00:05:00.000Z

Details after changing time:
Changed Modification Time: 2020-05-25T15:31:08.257Z
Changed Access Time: 2020-05-25T15:31:08.257Z
Example 2: javascript
// Node.js program to demonstrate the
// fs.utimes() method

// Import the filesystem module
const fs = require('fs');

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 newModifiedTime = new Date("January 25, 2017 05:11:00");
let newAccessTime = new Date("February 26, 2018 05:35:00");

// Use the utimes() function to assign
// the new timestamps
fs.utimes("example_file.txt", newAccessTime,
                       newModifiedTime, () => {

  // 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);
});
Output:
Details before changing time:
Modification Time: 2015-12-20T19:42:00.000Z
Access Time: 2020-05-25T15:19:24.250Z

Details after changing time:
Changed Modification Time: 2017-01-24T23:41:00.000Z
Changed Access Time: 2018-02-26T00:05:00.000Z
Reference: https://nodejs.org/api/fs.html#fs_fs_utimes_path_atime_mtime_callback

Similar Reads