• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
深水是沉默
别自制压力,我们没有必要跟着时间走, 只需跟着心态和能力走 随缘 尽力 问心无愧,其他的,交给天。
博客园    首页    新随笔    联系   管理    订阅  订阅
Java 遍历文件夹内每个文件夹的文件

在Java中,你可以使用java.nio.file包中的Files和DirectoryStream类来遍历文件夹内的所有文件,包括子文件夹中的文件。以下是一个示例代码,展示了如何实现这个功能:

import java.nio.file.DirectoryStream;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.io.IOException;

public class TraverseDirectory {

    public static void main(String[] args) {
        // 指定要遍历的根目录路径
        Path rootPath = Paths.get("path/to/your/root/directory");

        // 遍历根目录下的所有文件和文件夹
        try {
            Files.walk(rootPath)
                  .filter(Files::isRegularFile) // 过滤出普通文件
                  .forEach(path -> {
                      System.out.println(path); // 打印文件路径
                  });
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

 

在这个例子中,Files.walk方法用于遍历给定路径(rootPath)下的所有文件和子目录。filter(Files::isRegularFile)是一个中间操作,它过滤出所有普通文件(即非目录文件)。forEach方法接受一个Lambda表达式,用于对每个文件路径执行操作,这里我们简单地打印出每个文件的路径。

请确保在运行这段代码之前,你已经将"path/to/your/root/directory"替换为你实际想要遍历的目录路径。如果你也想处理目录,可以移除.filter(Files::isRegularFile)这一行,这样就会遍历所有文件和目录。

由于文件操作可能会抛出IOException,所以整个操作被包裹在一个try-catch块中,以便捕获并处理可能发生的异常。

 

posted on 2024-03-11 14:58  深水是沉默  阅读(1037)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3