SuffixFileFilterpublic class SuffixFileFilter extends AbstractFileFilter implements SerializableFilters 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]);
}
|
Fields Summary |
---|
private final String[] | suffixesThe filename suffixes to search for | private final IOCase | caseSensitivityWhether the comparison is case sensitive. |
Constructors Summary |
---|
public SuffixFileFilter(String suffix)Constructs a new Suffix file filter for a single extension.
this(suffix, IOCase.SENSITIVE);
| public SuffixFileFilter(String suffix, IOCase caseSensitivity)Constructs a new Suffix file filter for a single extension
specifying case-sensitivity.
if (suffix == null) {
throw new IllegalArgumentException("The suffix must not be null");
}
this.suffixes = new String[] {suffix};
this.caseSensitivity = (caseSensitivity == null ? IOCase.SENSITIVE : caseSensitivity);
| public SuffixFileFilter(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.
this(suffixes, IOCase.SENSITIVE);
| public SuffixFileFilter(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.
if (suffixes == null) {
throw new IllegalArgumentException("The array of suffixes must not be null");
}
this.suffixes = suffixes;
this.caseSensitivity = (caseSensitivity == null ? IOCase.SENSITIVE : caseSensitivity);
| public SuffixFileFilter(List suffixes)Constructs a new Suffix file filter for a list of suffixes.
this(suffixes, IOCase.SENSITIVE);
| public SuffixFileFilter(List suffixes, IOCase caseSensitivity)Constructs a new Suffix file filter for a list of suffixes
specifying case-sensitivity.
if (suffixes == null) {
throw new IllegalArgumentException("The list of suffixes must not be null");
}
this.suffixes = (String[]) suffixes.toArray(new String[suffixes.size()]);
this.caseSensitivity = (caseSensitivity == null ? IOCase.SENSITIVE : caseSensitivity);
|
Methods Summary |
---|
public boolean | accept(java.io.File file)Checks to see if the filename ends with the suffix.
String name = file.getName();
for (int i = 0; i < this.suffixes.length; i++) {
if (caseSensitivity.checkEndsWith(name, suffixes[i])) {
return true;
}
}
return false;
| public boolean | accept(java.io.File file, java.lang.String name)Checks to see if the filename ends with the suffix.
for (int i = 0; i < this.suffixes.length; i++) {
if (caseSensitivity.checkEndsWith(name, suffixes[i])) {
return true;
}
}
return false;
| public java.lang.String | toString()Provide a String representaion of this file filter.
StringBuffer buffer = new StringBuffer();
buffer.append(super.toString());
buffer.append("(");
if (suffixes != null) {
for (int i = 0; i < suffixes.length; i++) {
if (i > 0) {
buffer.append(",");
}
buffer.append(suffixes[i]);
}
}
buffer.append(")");
return buffer.toString();
|
|