node.js编程实现文件遍历
时间: 2024-01-26 22:13:23 浏览: 121
Node.js 使用递归实现遍历文件夹中所有文件
5星 · 资源好评率100%
以下是两种使用Node.js编程实现文件遍历的例子:
1. 异步方式遍历文件夹:
```javascript
function travel(dir, callback, finish) {
fs.readdir(dir, function (err, files) {
(function next(i) {
if (i < files.length) {
var pathname = path.join(dir, files[i]);
fs.stat(pathname, function (err, stats) {
if (stats.isDirectory()) {
travel(pathname, callback, function () {
next(i + 1);
});
} else {
callback(pathname, function () {
next(i + 1);
});
}
});
} else {
finish && finish();
}
}(0));
});
}
```
2. 同步方式遍历文件夹:
```javascript
function travel(dir, callback) {
fs.readdirSync(dir).forEach(function (file) {
var pathname = path.join(dir, file);
if (fs.statSync(pathname).isDirectory()) {
travel(pathname, callback);
} else {
callback(pathname);
}
});
}
```
阅读全文