java - JAVA中如何从目录的子文件夹中读取特定类型的文件

标签 java file subdirectory

我想问如何从目录中存在的子文件夹中读取(.xxx)类型的文件。

我有一个包含子文件夹的文件夹(子文件夹的数量未知)

  C:\MainFolder  
  contains->           [subFolder_A][subFolder_B]......[subFolder_n]

每个子文件夹都包含大量文件,但其中一个文件具有不同的类型,特别是 (.fingerprint) 类型。

       [subFolder_A]  -->  a.txt , atitle.txt  , afin.fingerprint
       [subFolder_B]  -->  b.txt , btitle.txt  , bfin.fingerprint
             ...............................................
       [subFolder_n]  -->  n.txt , ntitle.txt  , nfin.fingerprint

所以我想每次读取这个文件之一到java ...执行一些功能,然后执行下一个,直到 C:\MainFolder 被完全扫描。

如果我直接给出代码的路径,我可以阅读其中一个,但如果有人知道如何以自动方式获取它们,我需要一些提示

        Path path = Paths.get("C:\\MainFolder\\afin.fingerprint");
        byte[] data;
        byte[] fin;
        try {
             this.data = Files.readAllBytes(path);
             byte[] data = Files.readAllBytes(path);
       } catch (Exception e) {....}
          fin=data;

最佳答案

您可以walk the file tree recursively with a stream ,例如这样:

 Files.walk(Paths.get("C:/MainFolder"))
      .filter(p -> p.toFile().isFile())
      .filter(p -> p.getFileName().toString().endsWith(".fingerprint"))
      .forEach(p -> process(p));

关于java - JAVA中如何从目录的子文件夹中读取特定类型的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47039558/

相关文章:

java - 不鼓励使用 Mono<Optional<T>> 吗?

android - WhatsApp Web 在发送 .apk 文件时创建 zip

jquery - html css拖放文件上传样式

file - 如何打开最有可能是二进制的 LUA 文件?

directory - 如何从 SAS 中的目录和子目录(包括路径和数据集名称)获取所有列名称

java - 使用一个 Controller 管理多个资源的优缺点

java - 创建对象时出现 IndexOutOfBoundsException (Java)

java - 读入 Spark 3.3.0 时,Parquet 文件不保留架构的非空性方面

c++ - 如何使用 C++ 在 Windows 中列出子目录?

.htaccess RewriteRule 在子目录中不起作用