Module java.desktop
Package javax.swing.filechooser

# Class FileNameExtensionFilter

java.lang.Object
javax.swing.filechooser.FileFilter
javax.swing.filechooser.FileNameExtensionFilter

public final class FileNameExtensionFilter extends FileFilter
An implementation of `FileFilter` that filters using a specified set of extensions. The extension for a file is the portion of the file name after the last ".". Files whose name does not contain a "." have no file name extension. File name extension comparisons are case insensitive.

The following example creates a `FileNameExtensionFilter` that will show `jpg` files:

     FileFilter filter = new FileNameExtensionFilter("JPEG file", "jpg", "jpeg");
     JFileChooser fileChooser = ...;
     fileChooser.addChoosableFileFilter(filter);

Since:
  1.6
See Also:
  - `FileFilter`
  - `JFileChooser.setFileFilter(javax.swing.filechooser.FileFilter)`
  - `JFileChooser.addChoosableFileFilter(javax.swing.filechooser.FileFilter)`
  - `JFileChooser.getFileFilter()`

## Constructor Summary

Constructors
Constructor
Description
`FileNameExtensionFilter(String description, String... extensions)`
Creates a `FileNameExtensionFilter` with the specified description and file name extensions.

## Method Summary

Modifier and Type
Method
Description
`boolean`
`accept(File f)`
Tests the specified file, returning true if the file is accepted, false otherwise.
`String`
`getDescription()`
The description of this filter.
`String[]`
`getExtensions()`
Returns the set of file name extensions files are tested against.
`String`
`toString()`
Returns a string representation of the `FileNameExtensionFilter`.

### Methods declared in class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

## Constructor Details

### FileNameExtensionFilter

public FileNameExtensionFilter(String description, String... extensions)
Creates a `FileNameExtensionFilter` with the specified description and file name extensions. The returned `FileNameExtensionFilter` will accept all directories and any file with a file name extension contained in `extensions`.

Parameters:
  `description` - textual description for the filter, may be `null`
  `extensions` - the accepted file name extensions
Throws:
  `IllegalArgumentException` - if extensions is `null`, empty, contains `null`, or contains an empty string
See Also:
  - `accept(java.io.File)`

## Method Details

### accept

public boolean accept(File f)
Tests the specified file, returning true if the file is accepted, false otherwise. True is returned if the extension matches one of the file name extensions of this `FileFilter`, or the file is a directory.

Specified by:
  `accept` in class `FileFilter`
Parameters:
  `f` - the `File` to test
Returns:
  true if the file is to be accepted, false otherwise

### getDescription

public String getDescription()
The description of this filter. For example: "JPG and GIF Images."

Specified by:
  `getDescription` in class `FileFilter`
Returns:
  the description of this filter
See Also:
  - `FileView.getName(java.io.File)`

### getExtensions

public String[] getExtensions()
Returns the set of file name extensions files are tested against.

Returns:
  the set of file name extensions files are tested against

### toString

public String toString()
Returns a string representation of the `FileNameExtensionFilter`. This method is intended to be used for debugging purposes, and the content and format of the returned string may vary between implementations.

Overrides:
  `toString` in class `Object`
Returns:
  a string representation of this `FileNameExtensionFilter`