这应该很简单。如果我有这样的字符串:
../Test?/sample*.txt
那么获取与此模式匹配的文件列表的普遍接受的方法是什么? (例如,它应该匹配 ../Test1/sample22b.txt
../Test3/sample2.blah
../Test44/sample2.txt
../Test4/sample-spiffy.txt
我看了一下 org.apache.commons.io.filefilter.WildcardFileFilter
它似乎是正确的野兽,但我不确定如何使用它在相对目录路径中查找文件。
我想我可以查看 ant 的源代码,因为它使用通配符语法,但我必须在这里遗漏一些非常明显的东西。
( 编辑:上面的例子只是一个示例。我正在寻找在运行时解析包含通配符的一般路径的方法。我根据 mmyers 的建议想出了如何去做,但这有点烦人。更不用说了java JRE 似乎从单个参数自动解析 main(String[] arguments) 中的简单通配符,以“节省”我的时间和麻烦……我很高兴我没有非文件参数混合。)
原文由 Jason S 发布,翻译遵循 CC BY-SA 4.0 许可协议
考虑 Apache Ant 的 DirectoryScanner:
您需要引用 ant.jar(ant 1.7.1 大约 1.3 MB)。