Package org.apache.commons.io.filefilter
Class SuffixFileFilter
java.lang.Object
org.apache.commons.io.filefilter.AbstractFileFilter
org.apache.commons.io.filefilter.SuffixFileFilter
- All Implemented Interfaces:
FileFilter,FilenameFilter,Serializable,FileVisitor<Path>,PathMatcher,PathFilter,PathVisitor,IOFileFilter
Filters files based on the suffix (what the file name ends with).
This is used in retrieving all the files of a particular type.
For example, to retrieve and print all *.java files
in the current directory:
Using Classic IO
File dir = FileUtils.current();
String[] files = dir.list(new SuffixFileFilter(".java"));
for (String file : files) {
System.out.println(file);
}
Using NIO
final Path dir = PathUtils.current();
final AccumulatorPathVisitor visitor = AccumulatorPathVisitor.withLongCounters(new SuffixFileFilter(".java"));
//
// 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:
-
Field Summary
Fields inherited from interface org.apache.commons.io.filefilter.IOFileFilter
EMPTY_STRING_ARRAY -
Constructor Summary
ConstructorsConstructorDescriptionSuffixFileFilter(String suffix) Constructs a new Suffix file filter for a single extension.SuffixFileFilter(String... suffixes) Constructs a new Suffix file filter for an array of suffixes.SuffixFileFilter(String[] suffixes, IOCase ioCase) Constructs a new Suffix file filter for an array of suffixes specifying case-sensitivity.SuffixFileFilter(String suffix, IOCase ioCase) Constructs a new Suffix file filter for a single extension specifying case-sensitivity.SuffixFileFilter(List<String> suffixes) Constructs a new Suffix file filter for a list of suffixes.SuffixFileFilter(List<String> suffixes, IOCase ioCase) Constructs a new Suffix file filter for a list of suffixes specifying case-sensitivity. -
Method Summary
Modifier and TypeMethodDescriptionbooleanChecks to see if the file name ends with the suffix.booleanChecks to see if the file name ends with the suffix.accept(Path path, BasicFileAttributes attributes) Checks to see if the file name ends with the suffix.toString()Provide a String representation of this file filter.Methods inherited from class org.apache.commons.io.filefilter.AbstractFileFilter
handle, postVisitDirectory, preVisitDirectory, visitFile, visitFileFailedMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.commons.io.filefilter.IOFileFilter
and, matches, negate, or
-
Constructor Details
-
SuffixFileFilter
Constructs a new Suffix file filter for a list of suffixes.- Parameters:
suffixes- the suffixes to allow, must not be null- Throws:
IllegalArgumentException- if the suffix list is nullClassCastException- if the list does not contain Strings
-
SuffixFileFilter
Constructs a new Suffix file filter for a list of suffixes specifying case-sensitivity.- Parameters:
suffixes- the suffixes to allow, must not be nullioCase- how to handle case sensitivity, null means case-sensitive- Throws:
IllegalArgumentException- if the suffix list is nullClassCastException- if the list does not contain Strings- Since:
- 1.4
-
SuffixFileFilter
Constructs a new Suffix file filter for a single extension.- Parameters:
suffix- the suffix to allow, must not be null- Throws:
IllegalArgumentException- if the suffix is null
-
SuffixFileFilter
Constructs a new Suffix file filter for an array of suffixes.The array is not cloned, so could be changed after constructing the instance. This would be inadvisable however.
- Parameters:
suffixes- the suffixes to allow, must not be null- Throws:
NullPointerException- if the suffix array is null
-
SuffixFileFilter
Constructs a new Suffix file filter for a single extension specifying case-sensitivity.- Parameters:
suffix- the suffix to allow, must not be nullioCase- how to handle case sensitivity, null means case-sensitive- Throws:
NullPointerException- if the suffix is null- Since:
- 1.4
-
SuffixFileFilter
Constructs a new Suffix file filter for an array of suffixes specifying case-sensitivity.- Parameters:
suffixes- the suffixes to allow, must not be nullioCase- how to handle case sensitivity, null means case-sensitive- Throws:
NullPointerException- if the suffix array is null- Since:
- 1.4
-
-
Method Details
-
accept
Checks to see if the file name ends with the suffix.- Specified by:
acceptin interfaceFileFilter- Specified by:
acceptin interfaceIOFileFilter- Overrides:
acceptin classAbstractFileFilter- Parameters:
file- the File to check- Returns:
- true if the file name ends with one of our suffixes
-
accept
Checks to see if the file name ends with the suffix.- Specified by:
acceptin interfaceFilenameFilter- Specified by:
acceptin interfaceIOFileFilter- Overrides:
acceptin classAbstractFileFilter- Parameters:
file- the File directoryname- the file name- Returns:
- true if the file name ends with one of our suffixes
-
accept
Checks to see if the file name ends with the suffix.- Specified by:
acceptin interfaceIOFileFilter- Specified by:
acceptin interfacePathFilter- Parameters:
path- the File to checkattributes- the path's basic attributes (may be null).- Returns:
- true if the file name ends with one of our suffixes
- Since:
- 2.9.0
-
toString
Provide a String representation of this file filter.- Overrides:
toStringin classAbstractFileFilter- Returns:
- a String representation
-