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 | Description
    --- | ---
    `FileView()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `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.

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2026, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.