从 apache FileUtils 获取过滤后的文件列表

Get filtered file list from apache FileUtils

我正在尝试获取具有特定名称的文件列表。
但是从 apache commons 中使用 FileterUtils 并不容易。

我的目标是获取模式为 *_fact_.* 的所有文件。

我尝试如下。

Iterator<File> picFiles = 
  FileUtils
  .iterateFiles(
     uploadFile.getParentFile(),  
     FileFilterUtils.nameFileFilter("*_fact_1.*"), 
     null
   );

但是没有结果。

这可能会导致我错误地使用FileFilterUtils
我做错了什么?

您需要使用 WildcardFileFilter 而不是 NameFileFilter

Iterator<File> picFiles = 
  FileUtils
  .iterateFiles(
     uploadFile.getParentFile(),  
     new WildcardFileFilter("*_fact_1.*"), 
     null
   );