Javafx 文件选择器名称过滤器

Javafx filechooser name filter

我想知道是否有一种方法可以过滤文件名,使它们 select 能够在 select 文件的对话框中显示,例如所有以 [= 开头的文件12=] 并且是 txt 格式,我搜索了一下,发现只有关于使用扩展过滤器扩展的提示主题,这很好,但我想 select 只是一些格式的文件。

当然,你可以从这个例子中得到一些启发;在 Java Swing 中(我不确定在 JavaFX 中如何)您可以按名称或扩展名过滤文件,例如:

FileChooser fileChooser = new FileChooser();
FileFilter filter = new FileNameExtensionFilter("MP3 File","mp3");
fileChooser.setFileFilter(filter)`

在 JavaFX 中,您可以通过将 ExtensionFilter 添加到 getExtensionFilters 返回的过滤器列表中来过滤特定文件类型,如下所示:

FileChooser fileChooser = new FileChooser();
fileChooser.getExtensionFilters().add(new ExtensionFilter("Text Files", "*.txt"));

JavaFX 文件选择器不支持按文件名过滤,仅支持按扩展名过滤。这是因为大多数平台的文件选择器本身不支持此功能。

        FileChooser chooser = new FileChooser();
        chooser.getExtensionFilters().addAll(new ExtensionFilter("Excel Files", "*.xls"));

您可以使用 add 或 addAll,具体取决于您要添加的过滤器数量。