📅  最后修改于: 2023-12-03 15:33:09.115000             🧑  作者: Mango
Node.js fsPromises.opendir() 方法可以打开一个目录文件并返回一个目录迭代器(DirectoryIterator)。我们可以使用目录迭代器遍历目录中的所有文件信息。
fsPromises.opendir(path[, options])
参数说明:
bigint
:对于文件大小和文件偏移量使用 BigInt 类型。默认值:false。bufferEncoding
:指定 Buffer 对象的字符编码。默认值:‘utf8’。返回一个 Promise 对象,当 Promise 解决时,返回一个目录迭代器(DirectoryIterator)对象。当 Promise 拒绝时,返回一个错误对象。
以下代码演示如何使用 fsPromises.opendir() 方法遍历目录中的所有文件。
const fsPromises = require('fs/promises');
async function listFiles(dirPath) {
try {
const dir = await fsPromises.opendir(dirPath);
for await (const dirent of dir) {
console.log(dirent.name);
}
} catch(error) {
console.log(error);
}
}
listFiles('./myFolder');
上述代码通过调用 listFiles() 函数并传递目录路径信息进去,异步地打开目录并返回一个目录迭代器对象 dir
。然后在 for await
循环中,通过遍历目录返回的迭代器对象,得到目录中所有文件的详细信息。最后,将每个文件的名称以字符串形式输出到控制台。