所以我得到了这段非常基本的代码,它使用文件名过滤器初始化 JFileChooser。目前您应该只能看到 .txt 文件,稍后我想使用自定义文件名。
JFileChooser dialog = new JFileChooser();
dialog.setFileFilter(new FileNameExtensionFilter(".txt",".txt"));
dialog.setVisible(true);
dialog.showOpenDialog(dialog);
问题是,当应用过滤器时,没有显示任何文件,甚至没有显示它们应该显示的 .txt 文件。我试过几个文件结尾,我也试过使用“*.txt”但没有任何效果。 这真的让我很困扰,因为我只是不明白为什么那些基本的东西不起作用..
最佳答案
来自FileNameExtensionFilter类文档:
An implementation of FileFilter that filters using a specified set of extensions. The extension for a file is the portion of the file name after the last ".". Files whose name does not contain a "." have no file name extension. File name extension comparisons are case insensitive.
您只需要从扩展过滤器中删除句点,因为过滤时已经包含了句点,描述很好
所以这一行:
dialog.setFileFilter(new FileNameExtensionFilter(".txt",".txt"));
应该是:
dialog.setFileFilter(new FileNameExtensionFilter(".txt","txt"));
关于java - JFileChooser 不显示应用过滤器的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37773366/