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:
java.io.FileFilter, java.io.FilenameFilter, IOFileFilter

public class NameFileFilter
extends AbstractFileFilter

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:
Commons IO 1.0
Version:
$Revision: 471628 $ $Date: 2006-11-06 05:06:45 +0100 (Mo, 06 Nov 2006) $
Author:
Stephen Colebourne, Federico Barbieri, Serge Knystautas, Peter Donald

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

Constructor Detail

NameFileFilter

public NameFileFilter(java.lang.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:
java.lang.IllegalArgumentException - if the name is null

NameFileFilter

public NameFileFilter(java.lang.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:
java.lang.IllegalArgumentException - if the name is null

NameFileFilter

public NameFileFilter(java.lang.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:
java.lang.IllegalArgumentException - if the names array is null

NameFileFilter

public NameFileFilter(java.lang.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:
java.lang.IllegalArgumentException - if the names array is null

NameFileFilter

public NameFileFilter(java.util.List 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:
java.lang.IllegalArgumentException - if the name list is null
java.lang.ClassCastException - if the list does not contain Strings

NameFileFilter

public NameFileFilter(java.util.List 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:
java.lang.IllegalArgumentException - if the name list is null
java.lang.ClassCastException - if the list does not contain Strings
Method Detail

accept

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

Specified by:
accept in interface java.io.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(java.io.File file,
                      java.lang.String name)
Checks to see if the filename matches.

Specified by:
accept in interface java.io.FilenameFilter
Specified by:
accept in interface IOFileFilter
Overrides:
accept in class AbstractFileFilter
Parameters:
file - the File directory
name - the filename
Returns:
true if the filename matches


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