org.apache.commons.io.filefilter

Class NameFileFilter

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: Commons IO 1.0

Version: $Revision: 606381 $ $Date: 2007-12-22 02:03:16 +0000 (Sat, 22 Dec 2007) $

Author: Stephen Colebourne Federico Barbieri Serge Knystautas Peter Donald

Field Summary
IOCasecaseSensitivity
Whether the comparison is case sensitive.
String[]names
The filenames to search for
Constructor Summary
NameFileFilter(String name)
Constructs a new case-sensitive name file filter for a single name.
NameFileFilter(String name, IOCase caseSensitivity)
Construct a new name file filter specifying case-sensitivity.
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(List names)
Constructs a new case-sensitive name file filter for a list of names.
NameFileFilter(List names, IOCase caseSensitivity)
Constructs a new name file filter for a list of names specifying case-sensitivity.
Method Summary
booleanaccept(File file)
Checks to see if the filename matches.
booleanaccept(File file, String name)
Checks to see if the filename matches.
StringtoString()
Provide a String representaion of this file filter.

Field Detail

caseSensitivity

private final IOCase caseSensitivity
Whether the comparison is case sensitive.

names

private final String[] names
The filenames to search for

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 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 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.

Parameters: file the File to check

Returns: true if the filename matches

accept

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

Parameters: file the File directory name the filename

Returns: true if the filename matches

toString

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

Returns: a String representaion

Copyright (c) 2002-2011 Apache Software Foundation