nodejs获取指定路径下所有文件名

代码:

var readDir = fs.readdirSync("./");
console.log(readDir);


输出结果:

[ 'dir1', 'file1.html', 'file2.txt', 'test.js' ]

 

目录:

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 你可以使用 Node.js 的 `fs` 模块来扫描指定目录的所有文件。下面是一个例子,它会扫描目录 `./my-folder` 中的所有文件,并返回以 ".module.ts" 结尾的文件的文件名的数组: ``` const fs = require('fs'); // 读取目录中的所有文件 fs.readdir('./my-folder', (err, files) => { if (err) throw err; // 过滤出以 ".module.ts" 结尾的文件 const moduleFiles = files.filter(file => file.endsWith('.module.ts')); // 返回文件名数组 return moduleFiles; }); ``` 如果你想把这个过程封装成一个函数,你可以使用如下代码: ``` const fs = require('fs'); function getModuleFiles(dir) { return new Promise((resolve, reject) => { fs.readdir(dir, (err, files) => { if (err) return reject(err); const moduleFiles = files.filter(file => file.endsWith('.module.ts')); resolve(moduleFiles); }); }); } ``` 然后你可以在你的代码中调用这个函数,如下所示: ``` getModuleFiles('./my-folder').then(moduleFiles => { // 处理文件名数组 }); ``` ### 回答2: 使用Node.js可以轻松地扫描一个指定目录中的所有文件,并找出以".module.ts"结尾的文件。下面是一个简单的代码示例: ```javascript const fs = require('fs'); const path = require('path'); function scanFiles(directory) { const fileArray = []; function traverseDirectory(dir) { const files = fs.readdirSync(dir); files.forEach((file) => { const filePath = path.join(dir, file); const stat = fs.statSync(filePath); if (stat.isDirectory()) { traverseDirectory(filePath); // 递归遍历子目录 } else if (file.endsWith('.module.ts')) { fileArray.push(file); } }); } traverseDirectory(directory); // 开始遍历指定目录 return fileArray; } const directoryPath = '/path/to/directory'; // 替换为要扫描的目录的实际路径 const resultArray = scanFiles(directoryPath); console.log(resultArray); ``` 在这个示例中,我们使用`fs.readdirSync()`读取指定目录下的所有文件,并使用`fs.statSync()`检查文件是否是目录。对于目录,我们使用递归调用的方式继续遍历其子目录。对于以".module.ts"结尾的文件,我们将其文件名存储在一个数组中。最后,我们返回这个数组并打印出来。 请注意替换代码中的`/path/to/directory`为真实的目录路径。 ### 回答3: 使用Node.js扫描指定目录所有文件,并找出以.module.ts结尾的文件,并把这些文件的文件名组成一个数组并返回的代码如下: ```javascript const fs = require('fs'); const path = require('path'); function scanDirectory(directoryPath) { const files = fs.readdirSync(directoryPath); // 读取指定目录下的所有文件和文件夹 const moduleFiles = []; // 用于存储以.module.ts结尾的文件名 files.forEach((file) => { const filePath = path.join(directoryPath, file); // 获取文件的绝对路径 const stats = fs.statSync(filePath); // 获取文件的状态信息 if (stats.isFile() && file.endsWith('.module.ts')) { moduleFiles.push(file); // 如果是文件且以.module.ts结尾,则将文件名放入moduleFiles数组中 } else if (stats.isDirectory()) { moduleFiles.push(...scanDirectory(filePath)); // 如果是目录,则递归调用scanDirectory函数来扫描目录下的文件 } }); return moduleFiles; } const directoryPath = '指定目录的路径'; const moduleFilesArray = scanDirectory(directoryPath); // 调用scanDirectory函数获取文件名数组 console.log(moduleFilesArray); ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值