【问题标题】:Filter all files in any depth by file prefix inside a directory通过目录中的文件前缀过滤任何深度的所有文件
【发布时间】:2021-03-25 18:38:59
【问题描述】:

我正在使用 Apache Commons VFS2.0 来访问本地文件系统和远程文件系统中的文件。我正在尝试找到一种方法来使用FileType=File 过滤任何深度的所有后代文件,并具有带有文件名的给定文件前缀。除了文件前缀之外,我能够针对相同的情况执行此操作,但对于文件扩展名,如下所示。

FileSelector fileSelector = new FileExtensionSelector("extensions...");
directory.findFiles(fileSelector);

通过这种方式,我能够获取具有给定扩展名的任何深度的所有文件(无文件夹)。我尝试了以下方法,但它仅适用于深度=1的匹配文件。

FileFilterSelector prefixFileSelector = new FileFilterSelector(new PrefixFileFilter("Prefix"));
directory.findFiles(prefixFileSelector);

如果有人可以提出建议,不胜感激。

【问题讨论】:

    标签: java file-io apache-commons-vfs


    【解决方案1】:
    new FileFilterSelector(fileFilter) {
                        @Override
                        public boolean traverseDescendents(FileSelectInfo fileInfo) {
                            return true;
                        }
                        @Override
                        public boolean includeFile(FileSelectInfo fileInfo) throws Exception {
                        return accept(fileInfo);
                        }
                    }
    

    【讨论】:

      猜你喜欢
      • 2017-08-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-24
      • 1970-01-01
      • 2010-11-12
      • 2023-03-16
      相关资源
      最近更新 更多