public class NameFileFilter extends AbstractFileFilter implements java.io.Serializable
For example, to print all files and directories in the
current directory whose name is Test
:
File dir = FileUtils.current(); String[] files = dir.list(new NameFileFilter("Test")); for (String file : files) { System.out.println(file); }
final Path dir = PathUtils.current(); final AccumulatorPathVisitor visitor = AccumulatorPathVisitor.withLongCounters(new NameFileFilter("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());
Serialization is deprecated and will be removed in 3.0.
FileFilterUtils.nameFileFilter(String)
,
FileFilterUtils.nameFileFilter(String, IOCase)
,
Serialized FormModifier and Type | Field and Description |
---|---|
private IOCase |
ioCase
Whether the comparison is case-sensitive.
|
private java.lang.String[] |
names
The file names to search for
|
private static long |
serialVersionUID |
EMPTY_STRING_ARRAY
Constructor and Description |
---|
NameFileFilter(java.util.List<java.lang.String> names)
Constructs a new case-sensitive name file filter for a list of names.
|
NameFileFilter(java.util.List<java.lang.String> names,
IOCase ioCase)
Constructs a new name file filter for a list of names specifying case-sensitivity.
|
NameFileFilter(java.lang.String... names)
Constructs a new case-sensitive name file filter for an array of names.
|
NameFileFilter(java.lang.String name)
Constructs a new case-sensitive name file filter for a single name.
|
NameFileFilter(java.lang.String[] names,
IOCase ioCase)
Constructs a new name file filter for an array of names specifying case-sensitivity.
|
NameFileFilter(java.lang.String name,
IOCase ioCase)
Constructs a new name file filter specifying case-sensitivity.
|
Modifier and Type | Method and Description |
---|---|
boolean |
accept(java.io.File file)
Checks to see if the file name matches.
|
boolean |
accept(java.io.File dir,
java.lang.String name)
Checks to see if the file name matches.
|
java.nio.file.FileVisitResult |
accept(java.nio.file.Path file,
java.nio.file.attribute.BasicFileAttributes attributes)
Checks to see if the file name matches.
|
private boolean |
acceptBaseName(java.lang.String baseName) |
private IOCase |
toIOCase(IOCase ioCase) |
java.lang.String |
toString()
Provide a String representation of this file filter.
|
append, append, get, handle, postVisitDirectory, preVisitDirectory, toDefaultFileVisitResult, toFileVisitResult, visitFile, visitFileFailed
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
and, matches, negate, or
private static final long serialVersionUID
private final java.lang.String[] names
private final IOCase ioCase
public NameFileFilter(java.util.List<java.lang.String> names)
names
- the names to allow, must not be nulljava.lang.IllegalArgumentException
- if the name list is nulljava.lang.ClassCastException
- if the list does not contain Stringspublic NameFileFilter(java.util.List<java.lang.String> names, IOCase ioCase)
names
- the names to allow, must not be nullioCase
- how to handle case sensitivity, null means case-sensitivejava.lang.NullPointerException
- if the name list is nulljava.lang.ClassCastException
- if the list does not contain Stringspublic NameFileFilter(java.lang.String name)
name
- the name to allow, must not be nulljava.lang.IllegalArgumentException
- if the name is nullpublic NameFileFilter(java.lang.String... names)
The array is not cloned, so could be changed after constructing the instance. This would be inadvisable however.
names
- the names to allow, must not be nulljava.lang.IllegalArgumentException
- if the names array is nullpublic NameFileFilter(java.lang.String name, IOCase ioCase)
name
- the name to allow, must not be nullioCase
- how to handle case sensitivity, null means case-sensitivejava.lang.NullPointerException
- if the name is nullpublic NameFileFilter(java.lang.String[] names, IOCase ioCase)
names
- the names to allow, must not be nullioCase
- how to handle case sensitivity, null means case-sensitivejava.lang.NullPointerException
- if the names array is nullpublic boolean accept(java.io.File file)
accept
in interface java.io.FileFilter
accept
in interface IOFileFilter
accept
in class AbstractFileFilter
file
- the File to checkpublic boolean accept(java.io.File dir, java.lang.String name)
accept
in interface java.io.FilenameFilter
accept
in interface IOFileFilter
accept
in class AbstractFileFilter
dir
- the File directory (ignored)name
- the file namepublic java.nio.file.FileVisitResult accept(java.nio.file.Path file, java.nio.file.attribute.BasicFileAttributes attributes)
accept
in interface PathFilter
accept
in interface IOFileFilter
file
- the File to checkattributes
- the file's basic attributes (TODO may be null).private boolean acceptBaseName(java.lang.String baseName)
public java.lang.String toString()
toString
in class AbstractFileFilter