Open In App

Node.js fsPromises.writeFile() Method

Last Updated : 08 Oct, 2021
Improve
Improve
Like Article
Like
Save
Share
Report

The fsPromises.writeFile() method is used to asynchronously write the specified data to a file. By default, the file would be replaced if it exists. The ‘options’ parameter can be used to modify the functionality of the method.

The Promise will be resolved with no arguments upon success.

Syntax:

fsPromises.writeFile( file, data, options )

Parameters: This method accepts three parameters as mentioned above and described below:

  • file: It is a string, Buffer, URL or file description integer that denotes the path of the file where it has to be written. Using a file descriptor will make it behave similar to fsPromises.write() method.
  • data: It is a string, Buffer, TypedArray or DataView that will be written to the file.
  • options: It is an string or object that can be used to specify optional parameters that will affect the output. It has three optional parameter:
    • encoding: It is a string value that specifies the encoding of the file. The default value is ‘utf8’.
    • mode: It is an integer value that specifies the file mode. The default value is 0o666.
    • flag: It is a string value that specifies the flag used while writing to the file. The default value is ‘w’.

Return Value: This method returns a Promise.

Below examples illustrate the fsPromises.writeFile() method in Node.js:

Example 1:




// Node.js program to demonstrate the 
// fsPromises.writeFile() method 
  
// Import the filesystem module 
const fs = require('fs');
const fsPromises = require('fs').promises;
let data = "This is a file containing"
        + " a collection of movies.";
  
(async function main() {
    try {
        await fsPromises.writeFile(
                "movies.txt", data)
  
        console.log("File written successfully");
        console.log("The written file has"
            + " the following contents:");
  
        console.log(""
            fs.readFileSync("./movies.txt"));
  
    } catch (err) {
        console.error(err);
    }
})();


Output:

File written successfully
The written file has the following contents:     
This is a file containing a collection of movies.

Example 2:




// Node.js program to demonstrate the 
// fsPromises.writeFile() method 
  
// Import the filesystem module 
const fs = require('fs');
const fsPromises = require('fs').promises;
let data = "This is a file containing"
        + " a collection of books.";
  
(async function main() {
    try {
  
        await fsPromises.writeFile(
                "books.txt", data, {
            encoding: "utf8",
            flag: "w",
            mode: 0o666
        });
  
        console.log("File written successfully\n");
        console.log("The written has the "
                + "following contents:");
  
        console.log(""
            fs.readFileSync("books.txt"));
    }
    catch (err) {
        console.error(err);
    }
})();


Output:

File written successfully

The written has the following contents:
This is a file containing a collection of books.

Reference: https://nodejs.org/api/fs.html#fs_fspromises_writefile_file_data_options



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads