org.apache.commons.io.filefilter
Class NameFileFilter

java.lang.Object
  extended by org.apache.commons.io.filefilter.AbstractFileFilter
      extended by org.apache.commons.io.filefilter.NameFileFilter
All Implemented Interfaces:
FileFilter, FilenameFilter, Serializable, IOFileFilter

public class NameFileFilter
extends AbstractFileFilter
implements Serializable

Filters filenames for a certain name.

For example, to print all files and directories in the current directory whose name is Test:

 File dir = new File(".");
 String[] files = dir.list( new NameFileFilter("Test") );
 for ( int i = 0; i < files.length; i++ ) {
     System.out.println(files[i]);
 }
 

Since:
1.0
Version:
$Id: NameFileFilter.java 1304058 2012-03-22 21:02:43Z sebb $
See Also:
FileFilterUtils.nameFileFilter(String), FileFilterUtils.nameFileFilter(String, IOCase), Serialized Form

Constructor Summary
NameFileFilter(List<String> names)
          Constructs a new case-sensitive name file filter for a list of names.
NameFileFilter(List<String> names, IOCase caseSensitivity)
          Constructs a new name file filter for a list of names specifying case-sensitivity.
NameFileFilter(String name)
          Constructs a new case-sensitive name file filter for a single name.
NameFileFilter(String[] names)
          Constructs a new case-sensitive name file filter for an array of names.
NameFileFilter(String[] names, IOCase caseSensitivity)
          Constructs a new name file filter for an array of names specifying case-sensitivity.
NameFileFilter(String name, IOCase caseSensitivity)
          Construct a new name file filter specifying case-sensitivity.
 
Method Summary
 boolean accept(File file)
          Checks to see if the filename matches.
 boolean accept(File dir, String name)
          Checks to see if the filename matches.
 String toString()
          Provide a String representaion of this file filter.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

NameFileFilter

public NameFileFilter(String name)
Constructs a new case-sensitive name file filter for a single name.

Parameters:
name - the name to allow, must not be null
Throws:
IllegalArgumentException - if the name is null

NameFileFilter

public NameFileFilter(String name,
                      IOCase caseSensitivity)
Construct a new name file filter specifying case-sensitivity.

Parameters:
name - the name to allow, must not be null
caseSensitivity - how to handle case sensitivity, null means case-sensitive
Throws:
IllegalArgumentException - if the name is null

NameFileFilter

public NameFileFilter(String[] names)
Constructs a new case-sensitive name file filter for an array of names.

The array is not cloned, so could be changed after constructing the instance. This would be inadvisable however.

Parameters:
names - the names to allow, must not be null
Throws:
IllegalArgumentException - if the names array is null

NameFileFilter

public NameFileFilter(String[] names,
                      IOCase caseSensitivity)
Constructs a new name file filter for an array of names specifying case-sensitivity.

The array is not cloned, so could be changed after constructing the instance. This would be inadvisable however.

Parameters:
names - the names to allow, must not be null
caseSensitivity - how to handle case sensitivity, null means case-sensitive
Throws:
IllegalArgumentException - if the names array is null

NameFileFilter

public NameFileFilter(List<String> names)
Constructs a new case-sensitive name file filter for a list of names.

Parameters:
names - the names to allow, must not be null
Throws:
IllegalArgumentException - if the name list is null
ClassCastException - if the list does not contain Strings

NameFileFilter

public NameFileFilter(List<String> names,
                      IOCase caseSensitivity)
Constructs a new name file filter for a list of names specifying case-sensitivity.

Parameters:
names - the names to allow, must not be null
caseSensitivity - how to handle case sensitivity, null means case-sensitive
Throws:
IllegalArgumentException - if the name list is null
ClassCastException - if the list does not contain Strings
Method Detail

accept

public boolean accept(File file)
Checks to see if the filename matches.

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 filename matches

accept

public boolean accept(File dir,
                      String name)
Checks to see if the filename matches.

Specified by:
accept in interface FilenameFilter
Specified by:
accept in interface IOFileFilter
Overrides:
accept in class AbstractFileFilter
Parameters:
dir - the File directory (ignored)
name - the filename
Returns:
true if the filename matches

toString

public String toString()
Provide a String representaion of this file filter.

Overrides:
toString in class AbstractFileFilter
Returns:
a String representaion


Copyright © 2002-2012 The Apache Software Foundation. All Rights Reserved.