要从fs.Dirent获取类型,可以使用fs.stat()方法来获取详细信息,并通过Dirent对象的isFile()和isDirectory()方法来判断类型。
具体步骤如下:
以下是一个示例代码:
const fs = require('fs');
const directoryPath = './example-directory';
fs.readdir(directoryPath, { withFileTypes: true }, (err, files) => {
if (err) {
console.error(err);
return;
}
files.forEach((file) => {
fs.stat(`${directoryPath}/${file.name}`, (error, stats) => {
if (error) {
console.error(error);
return;
}
if (file.isFile()) {
console.log(`${file.name} is a file`);
} else if (file.isDirectory()) {
console.log(`${file.name} is a directory`);
} else {
console.log(`${file.name} is neither a file nor a directory`);
}
});
});
});
在这个示例代码中,我们通过fs.readdir()方法读取目录,并将withFileTypes选项设置为true,以获取Dirent对象的数组。然后,对于每个Dirent对象,使用fs.stat()方法获取详细信息。最后,使用isFile()和isDirectory()方法来判断类型,并打印相应的信息。
这里推荐腾讯云的相关产品:云服务器CVM和对象存储COS。
请注意,以上答案仅供参考,具体的技术选型和产品选择应根据实际需求和情况进行评估。
领取专属 10元无门槛券
手把手带您无忧上云