Package org.apache.commons.io.filefilter
Class SuffixFileFilter
- java.lang.Object
-
- org.apache.commons.io.filefilter.AbstractFileFilter
-
- org.apache.commons.io.filefilter.SuffixFileFilter
-
- All Implemented Interfaces:
java.io.FileFilter
,java.io.FilenameFilter
,java.io.Serializable
,IOFileFilter
public class SuffixFileFilter extends AbstractFileFilter implements java.io.Serializable
Filters files based on the suffix (what the filename ends with). This is used in retrieving all the files of a particular type.For example, to retrieve and print all
*.java
files in the current directory:File dir = new File("."); String[] files = dir.list( new SuffixFileFilter(".java") ); for (int i = 0; i < files.length; i++) { System.out.println(files[i]); }
- Since:
- 1.0
- Version:
- $Id: SuffixFileFilter.java 1304052 2012-03-22 20:55:29Z ggregory $
- See Also:
FileFilterUtils.suffixFileFilter(String)
,FileFilterUtils.suffixFileFilter(String, IOCase)
, Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private IOCase
caseSensitivity
Whether the comparison is case sensitive.private java.lang.String[]
suffixes
The filename suffixes to search for
-
Constructor Summary
Constructors Constructor Description SuffixFileFilter(java.lang.String suffix)
Constructs a new Suffix file filter for a single extension.SuffixFileFilter(java.lang.String[] suffixes)
Constructs a new Suffix file filter for an array of suffixs.SuffixFileFilter(java.lang.String[] suffixes, IOCase caseSensitivity)
Constructs a new Suffix file filter for an array of suffixs specifying case-sensitivity.SuffixFileFilter(java.lang.String suffix, IOCase caseSensitivity)
Constructs a new Suffix file filter for a single extension specifying case-sensitivity.SuffixFileFilter(java.util.List<java.lang.String> suffixes)
Constructs a new Suffix file filter for a list of suffixes.SuffixFileFilter(java.util.List<java.lang.String> suffixes, IOCase caseSensitivity)
Constructs a new Suffix file filter for a list of suffixes specifying case-sensitivity.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
accept(java.io.File file)
Checks to see if the filename ends with the suffix.boolean
accept(java.io.File file, java.lang.String name)
Checks to see if the filename ends with the suffix.java.lang.String
toString()
Provide a String representaion of this file filter.
-
-
-
Field Detail
-
suffixes
private final java.lang.String[] suffixes
The filename suffixes to search for
-
caseSensitivity
private final IOCase caseSensitivity
Whether the comparison is case sensitive.
-
-
Constructor Detail
-
SuffixFileFilter
public SuffixFileFilter(java.lang.String suffix)
Constructs a new Suffix file filter for a single extension.- Parameters:
suffix
- the suffix to allow, must not be null- Throws:
java.lang.IllegalArgumentException
- if the suffix is null
-
SuffixFileFilter
public SuffixFileFilter(java.lang.String suffix, IOCase caseSensitivity)
Constructs a new Suffix file filter for a single extension specifying case-sensitivity.- Parameters:
suffix
- the suffix to allow, must not be nullcaseSensitivity
- how to handle case sensitivity, null means case-sensitive- Throws:
java.lang.IllegalArgumentException
- if the suffix is null- Since:
- 1.4
-
SuffixFileFilter
public SuffixFileFilter(java.lang.String[] suffixes)
Constructs a new Suffix file filter for an array of suffixs.The array is not cloned, so could be changed after constructing the instance. This would be inadvisable however.
- Parameters:
suffixes
- the suffixes to allow, must not be null- Throws:
java.lang.IllegalArgumentException
- if the suffix array is null
-
SuffixFileFilter
public SuffixFileFilter(java.lang.String[] suffixes, IOCase caseSensitivity)
Constructs a new Suffix file filter for an array of suffixs specifying case-sensitivity.The array is not cloned, so could be changed after constructing the instance. This would be inadvisable however.
- Parameters:
suffixes
- the suffixes to allow, must not be nullcaseSensitivity
- how to handle case sensitivity, null means case-sensitive- Throws:
java.lang.IllegalArgumentException
- if the suffix array is null- Since:
- 1.4
-
SuffixFileFilter
public SuffixFileFilter(java.util.List<java.lang.String> suffixes)
Constructs a new Suffix file filter for a list of suffixes.- Parameters:
suffixes
- the suffixes to allow, must not be null- Throws:
java.lang.IllegalArgumentException
- if the suffix list is nulljava.lang.ClassCastException
- if the list does not contain Strings
-
SuffixFileFilter
public SuffixFileFilter(java.util.List<java.lang.String> suffixes, IOCase caseSensitivity)
Constructs a new Suffix file filter for a list of suffixes specifying case-sensitivity.- Parameters:
suffixes
- the suffixes to allow, must not be nullcaseSensitivity
- how to handle case sensitivity, null means case-sensitive- Throws:
java.lang.IllegalArgumentException
- if the suffix list is nulljava.lang.ClassCastException
- if the list does not contain Strings- Since:
- 1.4
-
-
Method Detail
-
accept
public boolean accept(java.io.File file)
Checks to see if the filename ends with the suffix.- Specified by:
accept
in interfacejava.io.FileFilter
- Specified by:
accept
in interfaceIOFileFilter
- Overrides:
accept
in classAbstractFileFilter
- Parameters:
file
- the File to check- Returns:
- true if the filename ends with one of our suffixes
-
accept
public boolean accept(java.io.File file, java.lang.String name)
Checks to see if the filename ends with the suffix.- Specified by:
accept
in interfacejava.io.FilenameFilter
- Specified by:
accept
in interfaceIOFileFilter
- Overrides:
accept
in classAbstractFileFilter
- Parameters:
file
- the File directoryname
- the filename- Returns:
- true if the filename ends with one of our suffixes
-
toString
public java.lang.String toString()
Provide a String representaion of this file filter.- Overrides:
toString
in classAbstractFileFilter
- Returns:
- a String representaion
-
-