有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java使用JavaFX中的FileChooser禁用隐藏文件

我正在开发一个Java应用程序,使用JavaFX作为它的用户界面

在Os X Mavericks中,当我使用FileChooser类从计算机硬盘加载CSV文件时,对话框会显示所有文件和文件夹,甚至是隐藏的文件和文件夹,它们会产生大量噪音,很难找到所需的文件

这个截图说明了我在说什么:

enter image description here

我认为这可能更像是OS X的问题,但我不知道如何修复,至少我不知道如何使用JavaFX FileChooser类修复它

这是我的代码:

Stage stage = new Stage();
FileChooser fileChooser = new FileChooser();
fileChooser.setTitle("Open File");
fileChooser.getExtensionFilters().addAll(
        new FileChooser.ExtensionFilter("Comma-Separated Values (CSV)", "*.csv")
);
fileChooser.setInitialDirectory(
        new File(System.getProperty("user.home"))
);
File selectedFile = fileChooser.showOpenDialog(stage);

更新

这是谷歌浏览器打开文件的模式

enter image description here


共 (2) 个答案

  1. # 1 楼答案

    您是否尝试过在OS X机器上的Finder-程序中隐藏所有隐藏的文件?所以:不是使用JavaFX,而是使用程序查找器

  2. # 2 楼答案

    在看了消息来源之后。。。 FileChooser是通过本机对话框实现的,完全不可自定义

    所以,不能强制对话框显示/隐藏隐藏的文件

    FileChooser对话框中应该有一个上下文菜单项来显示/隐藏它们, 但您无法从应用程序控制此选项

    例如,以下是它在Linux上的外观:

    FileChooser context menu