递归读取文件夹中的所有文件Java

SNp*_*Npn 3 java inputstream filereader

我需要编写一个程序来读取文件夹路径stdin及其所有子文件夹,然后根据其扩展名打印出文件数。

编译如下:

java Summary -r <path>

输出需要如下所示:

txt:
  number of files: 5
  combined size: 1202131
  largest file: 729224
  smallest file: 12323
pdf:
  number of files: 2
  etc...
Run Code Online (Sandbox Code Playgroud)

有人可以帮我吗?我不知道如何处理它。

MaV*_*SCy 6

你可以从这样的东西开始递归读取文件

public void listFilesForFolder(final File folder) {
    for (final File fileEntry : folder.listFiles()) {
        if (fileEntry.isDirectory()) {
            listFilesForFolder(fileEntry);
        } else {
            System.out.println(fileEntry.getName());
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

此代码由@rich 提供。

其余的细节是你必须解决的。

您可以查看读取文件夹中的所有文件以获取更多详细信息