假设这是你将要编写的实际生产代码,那么我建议对已经解决的这类问题使用解决方案,特别是
Apache Commons IOFileUtils.listFiles()。它处理嵌套目录,过滤器(基于名称,修改时间等)。
例如,对于你的正则表达式:
Collection files = FileUtils.listFiles( dir, new RegexFileFilter("^(.*?)"), DirectoryFileFilter.DIRECTORY);
这将递归搜索与
^(.*?)正则表达式匹配的文件,并以集合的形式返回结果。
值得注意的是,这不会比滚动自己的代码快,它的作用相同-用Java拖曳文件系统只是很慢。所不同的是,Apache Commons版本将没有错误。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)