我需要根据文件的名称和扩展名对文件进行排序。我为此使用 apache commons-io RegexFileFilter。文件名模式是这样的:“filename.xml.20130101200”或“filename.xml.20130101200.inprog”,其中数字是简单的时间戳。
FileFilter regexFilter = new RegexFileFilter( ".*\\d{12}|.*inprog" );
File[] suitableFiles = dir.listFiles( regexFilter );
如果包含这些文件的这个目录在我的主目录“/home/user/files”中,那么使用 jboss 运行时一切正常。但是当我将文件夹更改为“/tmp/files/”时,过滤器会找到扩展名为“.inprog”的文件。当我记录目录中的文件数时,它显示正确的数量。我编写了简单的主程序进行测试,一切正常,即使文件在 /tmp/files 中。Jboss 位于我的主文件夹中。
可能是什么问题呢?