/OpenJDK 8 GUI

Class FileView

Direct Known Subclasses:
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:



public FileView()



public String getName(File f)

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


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".


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"


public Icon getIcon(File f)

The icon that represents this file in the JFileChooser.


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.

© 1993–2017, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.