Package org.apache.commons.io.filefilter
Class PrefixFileFilter
java.lang.Object
org.apache.commons.io.filefilter.AbstractFileFilter
org.apache.commons.io.filefilter.PrefixFileFilter
- All Implemented Interfaces:
FileFilter
,FilenameFilter
,Serializable
,FileVisitor<Path>
,PathFilter
,PathVisitor
,IOFileFilter
Filters file names for a certain prefix.
For example, to print all files and directories in the
current directory whose name starts with Test
:
Using Classic IO
File dir = new File("."); String[] files = dir.list(new PrefixFileFilter("Test")); for (String file : files) { System.out.println(file); }
Using NIO
final Path dir = Paths.get(""); final AccumulatorPathVisitor visitor = AccumulatorPathVisitor.withLongCounters(new PrefixFileFilter("Test")); // // Walk one dir Files.walkFileTree(dir, Collections.emptySet(), 1, visitor); System.out.println(visitor.getPathCounters()); System.out.println(visitor.getFileList()); // visitor.getPathCounters().reset(); // // Walk dir tree Files.walkFileTree(dir, visitor); System.out.println(visitor.getPathCounters()); System.out.println(visitor.getDirList()); System.out.println(visitor.getFileList());
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final IOCase
Whether the comparison is case sensitive.private final String[]
The file name prefixes to search forprivate static final long
Fields inherited from interface org.apache.commons.io.filefilter.IOFileFilter
EMPTY_STRING_ARRAY
-
Constructor Summary
ConstructorsConstructorDescriptionPrefixFileFilter
(String prefix) Constructs a new Prefix file filter for a single prefix.PrefixFileFilter
(String... prefixes) Constructs a new Prefix file filter for any of an array of prefixes.PrefixFileFilter
(String[] prefixes, IOCase caseSensitivity) Constructs a new Prefix file filter for any of an array of prefixes specifying case-sensitivity.PrefixFileFilter
(String prefix, IOCase caseSensitivity) Constructs a new Prefix file filter for a single prefix specifying case-sensitivity.PrefixFileFilter
(List<String> prefixes) Constructs a new Prefix file filter for a list of prefixes.PrefixFileFilter
(List<String> prefixes, IOCase caseSensitivity) Constructs a new Prefix file filter for a list of prefixes specifying case-sensitivity. -
Method Summary
Modifier and TypeMethodDescriptionboolean
Checks to see if the file name starts with the prefix.boolean
Checks to see if the file name starts with the prefix.private boolean
accept
(Path file, BasicFileAttributes attributes) Checks to see if the file name starts with the prefix.toString()
Provide a String representation of this file filter.Methods inherited from class org.apache.commons.io.filefilter.AbstractFileFilter
handle, postVisitDirectory, preVisitDirectory, toFileVisitResult, 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, negate, or
-
Field Details
-
serialVersionUID
private static final long serialVersionUID- See Also:
-
prefixes
The file name prefixes to search for -
caseSensitivity
Whether the comparison is case sensitive.
-
-
Constructor Details
-
PrefixFileFilter
Constructs a new Prefix file filter for a list of prefixes.- Parameters:
prefixes
- the prefixes to allow, must not be null- Throws:
IllegalArgumentException
- if the prefix list is nullClassCastException
- if the list does not contain Strings
-
PrefixFileFilter
Constructs a new Prefix file filter for a list of prefixes specifying case-sensitivity.- Parameters:
prefixes
- the prefixes to allow, must not be nullcaseSensitivity
- how to handle case sensitivity, null means case-sensitive- Throws:
IllegalArgumentException
- if the prefix list is nullClassCastException
- if the list does not contain Strings- Since:
- 1.4
-
PrefixFileFilter
Constructs a new Prefix file filter for a single prefix.- Parameters:
prefix
- the prefix to allow, must not be null- Throws:
IllegalArgumentException
- if the prefix is null
-
PrefixFileFilter
Constructs a new Prefix file filter for any of an array of prefixes.The array is not cloned, so could be changed after constructing the instance. This would be inadvisable however.
- Parameters:
prefixes
- the prefixes to allow, must not be null- Throws:
IllegalArgumentException
- if the prefix array is null
-
PrefixFileFilter
Constructs a new Prefix file filter for a single prefix specifying case-sensitivity.- Parameters:
prefix
- the prefix to allow, must not be nullcaseSensitivity
- how to handle case sensitivity, null means case-sensitive- Throws:
IllegalArgumentException
- if the prefix is null- Since:
- 1.4
-
PrefixFileFilter
Constructs a new Prefix file filter for any of an array of prefixes specifying case-sensitivity.- Parameters:
prefixes
- the prefixes to allow, must not be nullcaseSensitivity
- how to handle case sensitivity, null means case-sensitive- Throws:
IllegalArgumentException
- if the prefix is null- Since:
- 1.4
-
-
Method Details
-
accept
Checks to see if the file name starts with the prefix.- Specified by:
accept
in interfaceFileFilter
- Specified by:
accept
in interfaceIOFileFilter
- Overrides:
accept
in classAbstractFileFilter
- Parameters:
file
- the File to check- Returns:
- true if the file name starts with one of our prefixes
-
accept
Checks to see if the file name starts with the prefix.- Specified by:
accept
in interfaceFilenameFilter
- Specified by:
accept
in interfaceIOFileFilter
- Overrides:
accept
in classAbstractFileFilter
- Parameters:
file
- the File directoryname
- the file name- Returns:
- true if the file name starts with one of our prefixes
-
accept
Checks to see if the file name starts with the prefix.- Specified by:
accept
in interfaceIOFileFilter
- Specified by:
accept
in interfacePathFilter
- Parameters:
file
- the File to checkattributes
- the file's basic attributes (TODO may be null).- Returns:
- true if the file name starts with one of our prefixes
- Since:
- 2.9.0
-
accept
-
toString
Provide a String representation of this file filter.- Overrides:
toString
in classAbstractFileFilter
- Returns:
- a String representation
-