javax.swing.filechooser

## Class FileView

- java.lang.Object
- - javax.swing.filechooser.FileView

Direct Known Subclasses:
  BasicFileChooserUI.BasicFileView

    public abstract class FileView
    extends Object

`FileView` defines an abstract class that can be implemented to provide the filechooser with UI information for a `File`. Each L&F `JFileChooserUI` object implements this class to pass back the correct icons and type descriptions specific to that L&F. For example, the Microsoft Windows L&F returns the generic Windows icons for directories and generic files. Additionally, you may want to provide your own `FileView` to `JFileChooser` to return different icons or additional information using `JFileChooser.setFileView(javax.swing.filechooser.FileView)`.

`JFileChooser` first looks to see if there is a user defined `FileView`, if there is, it gets type information from there first. If `FileView` returns `null` for any method, `JFileChooser` then uses the L&F specific view to get the information. So, for example, if you provide a `FileView` class that returns an `Icon` for JPG files, and returns `null` icons for all other files, the UI's `FileView` will provide default icons for all other files.

For an example implementation of a simple file view, see `yourJDK/demo/jfc/FileChooserDemo/ExampleFileView.java`. For more information and examples see How to Use File Choosers, a section in The Java Tutorial.

See Also:
  `JFileChooser`

### Constructor Summary

Constructors
Constructor and Description
`FileView()`

### Method Summary

All Methods Instance Methods Concrete Methods
`String` `getDescription(File f)` A human readable description of the file.
`Icon` `getIcon(File f)` The icon that represents this file in the `JFileChooser`.
`String` `getName(File f)` The name of the file.
`String` `getTypeDescription(File f)` A human readable description of the type of the file.
`Boolean` `isTraversable(File f)` Whether the directory is traversable or not.

### Methods inherited from class java.lang.Object

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

### Constructor Detail

#### FileView

    public FileView()

### Method Detail

#### getName

    public String getName(File f)

The name of the file. Normally this would be simply `f.getName()`.

#### getDescription

    public String getDescription(File f)

A human readable description of the file. For example, a file named jag.jpg might have a description that read: "A JPEG image file of James Gosling's face".

#### getTypeDescription

    public String getTypeDescription(File f)

A human readable description of the type of the file. For example, a `jpg` file might have a type description of: "A JPEG Compressed Image File"

#### getIcon

    public Icon getIcon(File f)

The icon that represents this file in the `JFileChooser`.

#### isTraversable

    public Boolean isTraversable(File f)

Whether the directory is traversable or not. This might be useful, for example, if you want a directory to represent a compound document and don't want the user to descend into it.