Search code examples
javafilesystemstraversal

FileIterator in Java?


Do you know where I can find a library that implements FileIterator (or something similar) in Java? Would be nice to have it working like the following (unchecked code):

Iterator it = new FileIterator();
it.addDirectory("../some-dir/");
it.addInclude("**/*.java");
it.addExclude(".svn/**");
while (it.hasNext()) {
  File f = it.next();
  System.out.println("File found: " + f);
}

Something similar is implemented in Maven FileSet, but I don't think it's a good idea to add Maven JAR to my project :)


Solution

  • Have a look at org.apache.commons.io.FileUtils.iterateFiles(..)

     Iterator<File> iterateFiles(File directory,
                                              String[] extensions,
                                              boolean recursive)