Package org.apache.commons.io.filefilter

# Class DirectoryFileFilter

java.lang.Object
org.apache.commons.io.filefilter.AbstractFileFilter
org.apache.commons.io.filefilter.DirectoryFileFilter

All Implemented Interfaces:
  `FileFilter`, `FilenameFilter`, `Serializable`, `FileVisitor<Path>`, `PathMatcher`, `PathFilter`, `PathVisitor`, `IOFileFilter`

public class DirectoryFileFilter extends AbstractFileFilter implements Serializable
This filter accepts `File`s that are directories.

For example, here is how to print out a list of the current directory's subdirectories:

## Using Classic IO

     File dir = FileUtils.current();
     String[] files = dir.list(DirectoryFileFilter.INSTANCE);
     for (String file : files) {
         System.out.println(file);
     }

## Using NIO

     final Path dir = PathUtils.current();
     final AccumulatorPathVisitor visitor = AccumulatorPathVisitor.withLongCounters(DirectoryFileFilter.INSTANCE);
     //
     // Walk one directory
     Files.walkFileTree(dir, Collections.emptySet(), 1, visitor);
     System.out.println(visitor.getPathCounters());
     System.out.println(visitor.getFileList());
     //
     visitor.getPathCounters().reset();
     //
     // Walk directory tree
     Files.walkFileTree(dir, visitor);
     System.out.println(visitor.getPathCounters());
     System.out.println(visitor.getDirList());
     System.out.println(visitor.getFileList());

## Deprecating Serialization

Serialization is deprecated and will be removed in 3.0.

Since:
  1.0
See Also:
  - `FileFilterUtils.directoryFileFilter()`
  - Serialized Form

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final IOFileFilter`
  `DIRECTORY`
  Singleton instance of directory filter.
  `static final IOFileFilter`
  `INSTANCE`
  Singleton instance of directory filter.

  ### Fields inherited from interface org.apache.commons.io.filefilter.IOFileFilter

  `EMPTY_STRING_ARRAY`

- ## Constructor Summary

  Constructors
  Modifier
  Constructor
  Description
  `protected`
  `DirectoryFileFilter()`
  Restrictive constructor.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `accept(File file)`
  Tests to see if the file is a directory.
  `FileVisitResult`
  `accept(Path file, BasicFileAttributes attributes)`
  Tests to see if the file is a directory.

  ### Methods inherited from class org.apache.commons.io.filefilter.AbstractFileFilter

  `accept, handle, postVisitDirectory, preVisitDirectory, toString, visitFile, visitFileFailed`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

  ### Methods inherited from interface org.apache.commons.io.filefilter.IOFileFilter

  `and, matches, negate, or`

- ## Field Details

  - ### DIRECTORY

    public static final IOFileFilter DIRECTORY
    Singleton instance of directory filter.
    Since:
      1.3

  - ### INSTANCE

    public static final IOFileFilter INSTANCE
    Singleton instance of directory filter. Please use the identical DirectoryFileFilter.DIRECTORY constant. The new name is more JDK 1.5 friendly as it doesn't clash with other values when using static imports.

- ## Constructor Details

  - ### DirectoryFileFilter

    protected DirectoryFileFilter()
    Restrictive constructor.

- ## Method Details

  - ### accept

    public boolean accept(File file)
    Tests to see if the file is a directory.
    Specified by:
      `accept` in interface `FileFilter`
    Specified by:
      `accept` in interface `IOFileFilter`
    Overrides:
      `accept` in class `AbstractFileFilter`
    Parameters:
      `file` - the File to check.
    Returns:
      true if the file is a directory.

  - ### accept

    public FileVisitResult accept(Path file, BasicFileAttributes attributes)
    Tests to see if the file is a directory.
    Specified by:
      `accept` in interface `IOFileFilter`
    Specified by:
      `accept` in interface `PathFilter`
    Parameters:
      `file` - the File to check.
      `attributes` - the path's basic attributes (may be null).
    Returns:
      true if the file is a directory.
    Since:
      2.9.0