Open In App

Node.js fs.promise.readdir() Method

Last Updated : 06 Apr, 2023
Improve
Improve
Like Article
Like
Save
Share
Report

The fs.promise.readdir() method defined in the File System module of Node.js. The file System module is basically to interact with the hard disk of the users computer. The readdir() method is used to read the files and folders names. The fs.promise.readdir() method returns a resolved or rejected promise and hence avoid the callback nesting or callback hell problems that may occur in fs.readdir() method.

Syntax

fs.promise.readdir(path, options)

Parameter: This method accepts two parameters as mentioned above and described below:

  • path: It is a string, buffer or url that specifies the path to the directory, whose contents is to be read.
  • options: It is an optional parameter and used to specify encoding techniques (default-utf8) etc.

Return Value: It returns a resolved or rejected promise. The promise is resolved with the list of the names of files and folders if a directory is successfully read otherwise rejected with an error object if any error is occurred (example-specified directory not exist or does not have permissions to read files etc). 

Example 1: 

javascript




// Node.js program to demonstrate the  
// fs.promise.readdir() Method
 
// Importing File System module
const fs = require('fs')
 
// The process.cwd() gives current
// working directory
fs.promises.readdir(process.cwd())
 
    // If promise resolved and
    // data are fetched
    .then(filenames => {
        for (let filename of filenames) {
            console.log(filename)
        }
    })
 
    // If promise is rejected
    .catch(err => {
        console.log(err)
    })


Output: Read and display the contents of current working directory ‘gfgExamples’  

Example 2: 

javascript




// Node.js program to demonstrate the  
// fs.promise.readdir() Method
 
// Importing File System module
const fs = require('fs')
 
// process.cwd() gives current
// working directory
const targetDir = process.argv[2] || process.cwd()
 
fs.promises.readdir(targetDir)
 
    // If promise resolved and
    // data are fetched
    .then(filenames => {
        for (let filename of filenames) {
            console.log(filename)
        }
    })
 
    // If promise is rejected
    .catch(err => {
        console.log(err)
    })


Output: Read and display the contents of one directory back to current working directory ‘gfgExamples’.  

Reference: https://nodejs.org/docs/latest/api/fs.html#fs_fspromises_readdir_path_options



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

Similar Reads