node.js读取文件夹路径内容
时间: 2024-09-18 21:12:37 浏览: 37
Node.js 使用递归实现遍历文件夹中所有文件
Node.js 中可以使用 `fs` 模块(File System模块)来读取文件夹的内容。下面是一个简单的示例,展示如何遍历目录及其内容:
```javascript
const fs = require('fs');
const path = require('path');
// 定义要读取的文件夹路径
const folderPath = './your_folder_path'; // 替换为你实际的文件夹路径
// 使用递归函数读取目录内容
function readFolderContent(dir) {
return new Promise((resolve, reject) => {
fs.readdir(dir, (err, files) => {
if (err) {
reject(err);
} else {
resolve(files.map(file => path.join(dir, file)));
// 对每个文件和子目录,递归地获取其内容
files.forEach(file => {
const filePath = path.join(dir, file);
fs.stat(filePath, (statErr, stats) => {
if (!stats.isDirectory()) {
console.log(`${filePath}: ${stats.isFile() ? 'file' : 'directory'}`);
} else {
readFolderContent(filePath)
.then(subFiles => {
console.log(`${filePath} contains:`, subFiles);
})
.catch(reject);
}
});
});
}
});
});
}
readFolderContent(folderPath)
.then(() => console.log('Folder content reading completed'))
.catch(error => console.error('Failed to read folder:', error));
```
在这个例子中,我们首先读取目录下的所有文件名,然后对每个文件名再次使用 `fs.stat` 来检查是否是文件还是子目录,并递归处理子目录的内容。
阅读全文