Class FileChooser
public final class FileChooser
extends Object On some platforms where file access may be restricted or not part of the user model (for example, on some mobile or embedded devices), opening a file dialog may always result in a no-op (that is, null file(s) being returned).
A FileChooser can be used to invoke file open dialogs for selecting single file (showOpenDialog), file open dialogs for selecting multiple files (showOpenMultipleDialog) and file save dialogs (showSaveDialog). The configuration of the displayed dialog is controlled by the values of the FileChooser properties set before the corresponding show*Dialog method is called. This configuration includes the dialog's title, the initial directory displayed in the dialog and the extension filter(s) for the listed files. For configuration properties which values haven't been set explicitly, the displayed dialog uses their platform default values. A call to a show dialog method is blocked until the user makes a choice or cancels the dialog. The return value specifies the selected file(s) or equals to null if the dialog has been canceled.
Example:
FileChooser fileChooser = new FileChooser();
fileChooser.setTitle("Open Resource File");
fileChooser.getExtensionFilters().addAll(
new ExtensionFilter("Text Files", "*.txt"),
new ExtensionFilter("Image Files", "*.png", "*.jpg", "*.gif"),
new ExtensionFilter("Audio Files", "*.wav", "*.mp3", "*.aac"),
new ExtensionFilter("All Files", "*.*"));
File selectedFile = fileChooser.showOpenDialog(mainStage);
if (selectedFile != null) {
mainStage.display(selectedFile);
}
- Since:
- JavaFX 2.0
Property Summary
| Type | Property | Description |
|---|---|---|
ObjectProperty<File> | initialDirectory | The initial directory for the displayed file dialog. |
ObjectProperty<String> | initialFileName | The initial file name for the displayed dialog. |
ObjectProperty<FileChooser.ExtensionFilter> | selectedExtensionFilter | This property is used to pre-select the extension filter for the next displayed dialog and to read the user-selected extension filter from the dismissed dialog. |
StringProperty | title | The title of the displayed file dialog. |
Nested Class Summary
| Modifier and Type | Class | Description |
|---|---|---|
static class | FileChooser.ExtensionFilter | Defines an extension filter, used for filtering which files can be chosen in a FileDialog based on the file name extensions. |
Constructor Summary
| Constructor | Description |
|---|---|
FileChooser() | Creates a FileChooser. |
Method Summary
| Modifier and Type | Method | Description |
|---|---|---|
ObservableList<FileChooser.ExtensionFilter> | getExtensionFilters() | Gets the extension filters used in the displayed file dialog. |
File | getInitialDirectory() | Gets the value of the property initialDirectory. |
String | getInitialFileName() | Gets the value of the property initialFileName. |
FileChooser.ExtensionFilter | getSelectedExtensionFilter() | Gets the value of the property selectedExtensionFilter. |
String | getTitle() | Gets the value of the property title. |
ObjectProperty<File> | initialDirectoryProperty() | The initial directory for the displayed file dialog. |
ObjectProperty<String> | initialFileNameProperty() | The initial file name for the displayed dialog. |
ObjectProperty<FileChooser.ExtensionFilter> | selectedExtensionFilterProperty() | This property is used to pre-select the extension filter for the next displayed dialog and to read the user-selected extension filter from the dismissed dialog. |
void | setInitialDirectory(File value) | Sets the value of the property initialDirectory. |
void | setInitialFileName(String value) | Sets the value of the property initialFileName. |
void | setSelectedExtensionFilter(FileChooser.ExtensionFilter filter) | Sets the value of the property selectedExtensionFilter. |
void | setTitle(String value) | Sets the value of the property title. |
File | showOpenDialog(Window ownerWindow) | Shows a new file open dialog. |
List<File> | showOpenMultipleDialog(Window ownerWindow) | Shows a new file open dialog in which multiple files can be selected. |
File | showSaveDialog(Window ownerWindow) | Shows a new file save dialog. |
StringProperty | titleProperty() | The title of the displayed file dialog. |
Property Details
title
public final StringProperty titleProperty
- See Also:
-
getTitle(),setTitle(String)
initialDirectory
public final ObjectProperty<File> initialDirectoryProperty
- See Also:
-
getInitialDirectory(),setInitialDirectory(File)
initialFileName
public final ObjectProperty<String> initialFileNameProperty
This property is used mostly in the displayed file save dialogs as the initial file name for the file being saved. If set for a file open dialog it will have any impact on the displayed dialog only if the corresponding platform provides support for such property in its file open dialogs.
- Since:
- JavaFX 2.2.40
- See Also:
-
getInitialFileName(),setInitialFileName(String)
selectedExtensionFilter
public final ObjectProperty<FileChooser.ExtensionFilter> selectedExtensionFilterProperty
When the file dialog is shown, the selectedExtensionFilter will be checked. If the value of selectedExtensionFilter is null or is not contained in the list of extension filters, then the first extension filter in the list of extension filters will be selected instead. Otherwise, the specified selectedExtensionFilter will be activated.
After the dialog is dismissed the value of this property is updated to match the user-selected extension filter from the dialog.
- Since:
- JavaFX 8.0
- See Also:
-
getSelectedExtensionFilter(),setSelectedExtensionFilter(FileChooser.ExtensionFilter)
Constructor Details
FileChooser
public FileChooser()
FileChooser.Method Details
setTitle
public final void setTitle(String value)
- Property description:
- The title of the displayed file dialog.
getTitle
public final String getTitle()
- Property description:
- The title of the displayed file dialog.
titleProperty
public final StringProperty titleProperty()
- See Also:
-
getTitle(),setTitle(String)
setInitialDirectory
public final void setInitialDirectory(File value)
- Property description:
- The initial directory for the displayed file dialog.
getInitialDirectory
public final File getInitialDirectory()
- Property description:
- The initial directory for the displayed file dialog.
initialDirectoryProperty
public final ObjectProperty<File> initialDirectoryProperty()
- See Also:
-
getInitialDirectory(),setInitialDirectory(File)
setInitialFileName
public final void setInitialFileName(String value)
- Property description:
- The initial file name for the displayed dialog.
This property is used mostly in the displayed file save dialogs as the initial file name for the file being saved. If set for a file open dialog it will have any impact on the displayed dialog only if the corresponding platform provides support for such property in its file open dialogs.
- Since:
- JavaFX 2.2.40
getInitialFileName
public final String getInitialFileName()
- Property description:
- The initial file name for the displayed dialog.
This property is used mostly in the displayed file save dialogs as the initial file name for the file being saved. If set for a file open dialog it will have any impact on the displayed dialog only if the corresponding platform provides support for such property in its file open dialogs.
- Since:
- JavaFX 2.2.40
initialFileNameProperty
public final ObjectProperty<String> initialFileNameProperty()
This property is used mostly in the displayed file save dialogs as the initial file name for the file being saved. If set for a file open dialog it will have any impact on the displayed dialog only if the corresponding platform provides support for such property in its file open dialogs.
- Since:
- JavaFX 2.2.40
- See Also:
-
getInitialFileName(),setInitialFileName(String)
getExtensionFilters
public ObservableList<FileChooser.ExtensionFilter> getExtensionFilters()
- Returns:
- An observable list of the extension filters used in this dialog
selectedExtensionFilterProperty
public final ObjectProperty<FileChooser.ExtensionFilter> selectedExtensionFilterProperty()
When the file dialog is shown, the selectedExtensionFilter will be checked. If the value of selectedExtensionFilter is null or is not contained in the list of extension filters, then the first extension filter in the list of extension filters will be selected instead. Otherwise, the specified selectedExtensionFilter will be activated.
After the dialog is dismissed the value of this property is updated to match the user-selected extension filter from the dialog.
- Since:
- JavaFX 8.0
- See Also:
-
getSelectedExtensionFilter(),setSelectedExtensionFilter(FileChooser.ExtensionFilter)
setSelectedExtensionFilter
public final void setSelectedExtensionFilter(FileChooser.ExtensionFilter filter)
- Property description:
- This property is used to pre-select the extension filter for the next displayed dialog and to read the user-selected extension filter from the dismissed dialog.
When the file dialog is shown, the selectedExtensionFilter will be checked. If the value of selectedExtensionFilter is null or is not contained in the list of extension filters, then the first extension filter in the list of extension filters will be selected instead. Otherwise, the specified selectedExtensionFilter will be activated.
After the dialog is dismissed the value of this property is updated to match the user-selected extension filter from the dialog.
- Since:
- JavaFX 8.0
getSelectedExtensionFilter
public final FileChooser.ExtensionFilter getSelectedExtensionFilter()
- Property description:
- This property is used to pre-select the extension filter for the next displayed dialog and to read the user-selected extension filter from the dismissed dialog.
When the file dialog is shown, the selectedExtensionFilter will be checked. If the value of selectedExtensionFilter is null or is not contained in the list of extension filters, then the first extension filter in the list of extension filters will be selected instead. Otherwise, the specified selectedExtensionFilter will be activated.
After the dialog is dismissed the value of this property is updated to match the user-selected extension filter from the dialog.
- Since:
- JavaFX 8.0
showOpenDialog
public File showOpenDialog(Window ownerWindow)
null if no selection has been made. If the owner window for the file dialog is set, input to all windows in the dialog's owner chain is blocked while the file dialog is being shown.- Parameters:
-
ownerWindow- the owner window of the displayed file dialog - Returns:
- the selected file or
nullif no file has been selected
showOpenMultipleDialog
public List<File> showOpenMultipleDialog(Window ownerWindow)
null if no selection has been made. If the owner window for the file dialog is set, input to all windows in the dialog's owner chain is blocked while the file dialog is being shown. The returned list is unmodifiable and will throw UnsupportedOperationException on each modification attempt.
- Parameters:
-
ownerWindow- the owner window of the displayed file dialog - Returns:
- the selected files or
nullif no file has been selected
showSaveDialog
public File showSaveDialog(Window ownerWindow)
null if no selection has been made. If the owner window for the file dialog is set, input to all windows in the dialog's owner chain is blocked while the file dialog is being shown.- Parameters:
-
ownerWindow- the owner window of the displayed file dialog - Returns:
- the selected file or
nullif no file has been selected
© 2008, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from JavaFX API Documentation.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Java, JavaFX and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.