Dart通过递归的方式遍历整个文件夹。代码如下:
import 'dart:io';
int fileCount = 0;
void recursionFile(String pathName) {
Directory dir = Directory(pathName);
if (!dir.existsSync()) {
return;
}
List<FileSystemEntity> lists = dir.listSync();
for (FileSystemEntity entity in lists) {
fileCount = fileCount + 1;
if (entity is File) {
File file = entity;
print('$fileCount:${file.path}');
} else if (entity is Directory) {
Directory subDir = entity;
recursionFile(subDir.path);
}
}
}