Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.commons.io.filefilter
Class WildcardFileFilter

    java.lang.Object
      org.apache.commons.io.filefilter.AbstractFileFilter
          org.apache.commons.io.filefilter.WildcardFileFilter

All Implemented Interfaces:
  FileFilter, FilenameFilter, Serializable, IOFileFilter

    public class WildcardFileFilter

extends AbstractFileFilter
implements Serializable

Filters files using the supplied wildcards.

This filter selects files and directories based on one or more wildcards. Testing is case-sensitive by default, but this can be configured.

The wildcard matcher uses the characters '?' and '*' to represent a single or multiple wildcard characters. This is the same as often found on Dos/Unix command lines. The extension check is case-sensitive by . See `FilenameUtils.wildcardMatchOnSystem(java.lang.String, java.lang.String)` for more information.

For example:

     File dir = new File(".");
     FileFilter fileFilter = new WildcardFileFilter("*test*.java~*~");
     File[] files = dir.listFiles(fileFilter);
     for (int i = 0; i < files.length; i++) {
       System.out.println(files[i]);
     }

Since:
  Commons IO 1.3
Version:
  $Revision: 155419 $ $Date: 2007-12-22 02:03:16 +0000 (Sat, 22 Dec 2007) $
Author:
  Jason Anderson
See Also:
  Serialized Form

Constructor Summary
`WildcardFileFilter(List wildcards)` Construct a new case-sensitive wildcard filter for a list of wildcards.
`WildcardFileFilter(List wildcards, IOCase caseSensitivity)` Construct a new wildcard filter for a list of wildcards specifying case-sensitivity.
`WildcardFileFilter(String wildcard)` Construct a new case-sensitive wildcard filter for a single wildcard.
`WildcardFileFilter(String[] wildcards)` Construct a new case-sensitive wildcard filter for an array of wildcards.
`WildcardFileFilter(String[] wildcards, IOCase caseSensitivity)` Construct a new wildcard filter for an array of wildcards specifying case-sensitivity.
`WildcardFileFilter(String wildcard, IOCase caseSensitivity)` Construct a new wildcard filter for a single wildcard specifying case-sensitivity.

Method Summary
`boolean` | `accept(File file)` Checks to see if the filename matches one of the wildcards.
`boolean` | `accept(File dir, String name)` Checks to see if the filename matches one of the wildcards.
`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

### WildcardFileFilter

    public WildcardFileFilter(String wildcard)

  Construct a new case-sensitive wildcard filter for a single wildcard.

  Parameters:
    `wildcard` - the wildcard to match
  Throws:
    `IllegalArgumentException` - if the pattern is null

### WildcardFileFilter

    public WildcardFileFilter(String wildcard,
                              IOCase caseSensitivity)

  Construct a new wildcard filter for a single wildcard specifying case-sensitivity.

  Parameters:
    `wildcard` - the wildcard to match, not null
    `caseSensitivity` - how to handle case sensitivity, null means case-sensitive
  Throws:
    `IllegalArgumentException` - if the pattern is null

### WildcardFileFilter

    public WildcardFileFilter(String[] wildcards)

  Construct a new case-sensitive wildcard filter for an array of wildcards.

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

  Parameters:
    `wildcards` - the array of wildcards to match
  Throws:
    `IllegalArgumentException` - if the pattern array is null

### WildcardFileFilter

    public WildcardFileFilter(String[] wildcards,
                              IOCase caseSensitivity)

  Construct a new wildcard filter for an array of wildcards specifying case-sensitivity.

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

  Parameters:
    `wildcards` - the array of wildcards to match, not null
    `caseSensitivity` - how to handle case sensitivity, null means case-sensitive
  Throws:
    `IllegalArgumentException` - if the pattern array is null

### WildcardFileFilter

    public WildcardFileFilter(List wildcards)

  Construct a new case-sensitive wildcard filter for a list of wildcards.

  Parameters:
    `wildcards` - the list of wildcards to match, not null
  Throws:
    `IllegalArgumentException` - if the pattern list is null
    `ClassCastException` - if the list does not contain Strings

### WildcardFileFilter

    public WildcardFileFilter(List wildcards,
                              IOCase caseSensitivity)

  Construct a new wildcard filter for a list of wildcards specifying case-sensitivity.

  Parameters:
    `wildcards` - the list of wildcards to match, not null
    `caseSensitivity` - how to handle case sensitivity, null means case-sensitive
  Throws:
    `IllegalArgumentException` - if the pattern list is null
    `ClassCastException` - if the list does not contain Strings

Method Detail

### accept

    public boolean accept(File dir,
                          String name)

  Checks to see if the filename matches one of the wildcards.

  Specified by:
    `accept` in interface `FilenameFilter`
  Specified by:
    `accept` in interface `IOFileFilter`
  Overrides:
    `accept` in class `AbstractFileFilter`
  Parameters:
    `dir` - the file directory
    `name` - the filename
  Returns:
    true if the filename matches one of the wildcards

### accept

    public boolean accept(File file)

  Checks to see if the filename matches one of the wildcards.

  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 one of the wildcards

### toString

    public String toString()

  Provide a String representaion of this file filter.

  Overrides:
    `toString` in class `AbstractFileFilter`
  Returns:
    a String representaion

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

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