📜  Node.js fsPromises.opendir() 方法

📅  最后修改于: 2022-05-13 01:56:35.272000             🧑  作者: Mango

Node.js fsPromises.opendir() 方法

fsPromises.opendir()方法用于异步打开文件系统中的目录。它创建一个fs.Dir ,其中包含用于读取和清理目录的所有进一步功能。该对象包含可用于访问目录的各种方法。

句法:

fsPromises.opendir( path[, options])

参数:此方法接受上面提到的两个参数,如下所述:

  • path:它是一个String、Buffer或URL,表示必须打开的目录的路径。
  • options:它是一个字符串或对象,可用于指定将影响输出的可选参数。它有两个可选参数:
    • encoding:它是一个字符串,用于指定打开目录时和后续读取操作的路径的编码。默认值为“utf8”。
    • bufferSize:它是一个数字,指定在读取目录时在内部缓冲的目录条目数。更高的值意味着更高的性能,但会导致更高的内存使用率。默认值为“32”。

示例:此示例说明了 Node.js 中的fsPromises.opendir()方法。

文件名:index.js

// Node.js program to demonstrate the 
// fsPromises.opendir() method 
     
// Import the filesystem module 
const fs = require('fs'); 
const fsPromises = fs.promises;
  
fsPromises.opendir(__dirname)
.then(function(result) {
  console.log(result);
})
.catch(function(error) {
  console.log(error);
});

运行此程序的步骤:
使用以下命令运行index.js文件:

node index.js

输出:

Dir {
  [Symbol(kDirHandle)]: DirHandle {},
  [Symbol(kDirBufferedEntries)]: [],
  [Symbol(kDirPath)]: 'C:\\Users\\Lenovo\\Downloads\\Internship\\Program',
  [Symbol(kDirClosed)]: false,
  [Symbol(kDirOptions)]: { bufferSize: 32, encoding: 'utf8' },
  [Symbol(kDirReadPromisified)]: [Function: bound [kDirReadImpl]],
  [Symbol(kDirClosePromisified)]: [Function: bound close]
}

参考: https://nodejs.org/api/fs.html#fs_fspromises_opendir_path_options