• Reads the contents of a directory.

    The optional options argument can be a string specifying an encoding, or an object with an encoding property specifying the character encoding to use for the filenames. If the encoding is set to 'buffer', the filenames returned will be passed as Buffer objects.

    If options.withFileTypes is set to true, the resolved array will contain fs.Dirent objects.

    import { readdir } from 'fs/promises';

    try {
    const files = await readdir(path);
    for (const file of files)
    console.log(file);
    } catch (err) {
    console.error(err);
    }

    Since

    v10.0.0

    Returns

    Fulfills with an array of the names of the files in the directory excluding '.' and '..'.

    Parameters

    Returns Promise<string[]>

  • Asynchronous readdir(3) - read a directory.

    Parameters

    • path: PathLike

      A path to a file. If a URL is provided, it must use the file: protocol.

    • options: "buffer" | {
          encoding: "buffer";
          withFileTypes?: false;
      }

      The encoding (or an object specifying the encoding), used as the encoding of the result. If not provided, 'utf8' is used.

    Returns Promise<Buffer[]>

  • Asynchronous readdir(3) - read a directory.

    Parameters

    • path: PathLike

      A path to a file. If a URL is provided, it must use the file: protocol.

    • Optional options: null | BufferEncoding | ObjectEncodingOptions & {
          withFileTypes?: false;
      }

      The encoding (or an object specifying the encoding), used as the encoding of the result. If not provided, 'utf8' is used.

    Returns Promise<string[] | Buffer[]>

  • Asynchronous readdir(3) - read a directory.

    Parameters

    • path: PathLike

      A path to a file. If a URL is provided, it must use the file: protocol.

    • options: ObjectEncodingOptions & {
          withFileTypes: true;
      }

      If called with withFileTypes: true the result data will be an array of Dirent.

    Returns Promise<Dirent[]>