首页 > 编程语言 >Java 遍历文件夹内每个文件夹的文件

Java 遍历文件夹内每个文件夹的文件

时间:2024-03-11 15:00:29浏览次数:25  
标签:Files 文件 遍历 Java 文件夹 import java

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

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块中,以便捕获并处理可能发生的异常。

 

标签:Files,文件,遍历,Java,文件夹,import,java
From: https://www.cnblogs.com/xiaobug/p/18066090

相关文章

  • JavaScript逆向之有道翻译加解密全过程解析
    本篇文章用于解析有道翻译中的加解密全过程url:https://fanyi.youdao.com/index.html#/加密访问网址,输入框中随便输入一个英文单词,查看触发流量包,只看Fetch/XHR类型的。这里主要关注webtranslate的这条,请求参数和响应数据都是有加密的,主要了解其的加解密逻辑。根据url定位......
  • Java诊断工具Arthas:开篇之watch实战
    Arthas是阿里开源的线上监控诊断产品,用于问题的排查和诊断。它的出现大大提高线上排查问题的效率,这篇只讲它一个非常牛逼的功能,其它功能往后篇章会在展开详细说。一、Arthas能为你做什么?1、遇到问题无法在线上debug,难道只能通过加日志再重新发布吗?2、我改的代码为什么没有执......
  • Java基础输入输出
    好久不写普通Java,一上手发现简单的部分都忘记怎么写了……趁着这次练习,赶紧记一下packageorg.example;importjava.util.Scanner;publicclassMain{publicstaticvoidmain(String[]args){//System.out.println("Helloworld!");Scannerscanner=ne......
  • ubuntu20.04-通过docker安装jenkins并自动化发布java
    前言jenkins需要git、maven和node,其中maven和node手动添加,git和git环境是jenkins镜像自带了的。如果删除了docker对应的jenkins容器后(删除前一定备份jenkins_home整个文件夹,否则怕前功尽弃:tar-czvfjenkins_home.tar.gz/var/jenkins_home)如果删除了容器,需要重新安装并配置m......
  • java: 程序包com.sun.org.slf4j.internal不存在
    java:程序包com.sun.org.slf4j.internal不存在事件之由来问题之分析处理之方案收工事件之由来拉完别人的项目后,启动不了了,报错提示:java:程序包com.sun.org.slf4j.internal不存在1问题之分析就是别人用lombok了同时使用slf4j和lombok的时候会出现这个问题原因是slf4j和lombok自......
  • WPF 实现文件/文件夹监听工具
    参考gpt环境软件/系统版本说明WindowsWindows10专业版22H219045.4046MicrosoftVisualStudioMicrosoftVisualStudioCommunity2022(64位)-17.6.5Microsoft.NetSDK8.0.101手动安装Microsoft.NetSDK7.0.306MicrosoftVisualStudio......
  • Java Http Get Post 请求工具类
    importcom.alibaba.fastjson.JSONObject;importorg.apache.http.NameValuePair;importorg.apache.http.client.config.RequestConfig;importorg.apache.http.client.entity.UrlEncodedFormEntity;importorg.apache.http.client.methods.CloseableHttpResponse;importorg......
  • default在java中的用法 java里default
    介绍default是在java8中引入的关键字,也可称为Virtualextensionmethods——虚拟扩展方法。是指,在接口内部包含了一些默认的方法实现(也就是接口中可以包含方法体,这打破了Java之前版本对接口的语法限制),从而使得接口在进行扩展的时候,不会破坏与接口相关的实现类代码。为什么需要这......
  • Java 对接Zabbix获取主机监控+告警数据
    1.Java对接ZabbixAPI前提准备  zabbix对接文档地址: https://www.zabbix.com/documentation/6.4/zh/manual/api对接ZabbixAPI接口需要针对对接的用户授予对应的API权限,如下图所示 使用超管账户登录zabbix 用户--->用户,查看用户列表      点击对接......
  • 狂神说Java——Mybatis学习笔记
    前言:配合狂神老师的教学视频使用效果更佳:https://www.bilibili.com/video/BV1NE411Q7Nx/?spm_id_from=333.1007.top_right_bar_window_custom_collection.content.click&vd_source=4c3c519d33c113799489c7417a0a4c0e1、简介环境说明:jdk8+MySQL5.7.19maven-3.6.......