如何使 JFileChooser 显示除 .huff 文件之外的所有类型的文件 [重复]
Posted
技术标签:
【中文标题】如何使 JFileChooser 显示除 .huff 文件之外的所有类型的文件 [重复]【英文标题】:How to make JFileChooser show every type of files except .huff files [duplicate] 【发布时间】:2021-02-27 03:59:12 【问题描述】:我正在开发一个实现 Huffman 算法的 Java (Swing) 程序。它需要一个文件并将其压缩为 filename.huff 我必须让 JFileChooser 显示系统中的每个文件,但不是我压缩的具有 .huff 扩展名的文件
我没有尝试任何代码,因为我不知道该怎么做。但我知道如何制作一个仅显示特定类型文件的 FileFilter:
FileFilter filter = new FileNameExtensionFilter("Huffman File","huff");
JFileChooser j = new JFileChooser(System.getProperty("user.dir"));
j.setFileFilter(filter);
int returnVal = j.showOpenDialog(null);
if(returnVal == JFileChooser.APPROVE_OPTION)
txtBrowse.setText(j.getSelectedFile().getAbsolutePath());
那么,问题是如何让 FileFilter 显示除 .huff 文件之外的所有类型的文件?
【问题讨论】:
您将 FolNameExtension 过滤器设置为接受所有扩展名,并在您的过滤器代码中过滤掉压缩文件。 这就是我的观点。我可以制作一个只显示 .huff 文件的过滤器,但我不知道如何制作一个过滤器来显示除 .huff 之外的所有类型的文件:\ 【参考方案1】:使用javax.swing.filechooser.FileFilter
:
..是 JFileChooser 用于过滤显示给用户的文件集的抽象类。请参阅
FileNameExtensionFilter
了解使用文件扩展名进行过滤的实现。 可以在JFileChooser
上设置FileFilter
,以防止不需要的文件出现在目录列表中。有关简单文件过滤器的示例实现,请参阅yourJDK/demo/jfc/FileChooserDemo/ExampleFileFilter.java
。有关更多信息和示例,请参阅 Java 教程中的“如何使用文件选择器”部分。
注意粗体部分,它是在查看methods of JFileChooser
片刻后获得的,这是您在就 SO 提问之前应该做的事情。
下面是实现一个使用.txt
作为要排除的文件的效果:
【讨论】:
如果它有助于解决问题,请accept the answer。以上是关于如何使 JFileChooser 显示除 .huff 文件之外的所有类型的文件 [重复]的主要内容,如果未能解决你的问题,请参考以下文章