我有一个JFileChooser
,我希望在类型中有不同的选项可以更改扩展名。我想要的选项是
现在我有:
JFileChooser chooser = new WritableFileChooser(Model.getSingleton().getOptionsParam().getUserDirectory());
chooser.setFileFilter(new FileFilter()
{
@Override
public boolean accept(File file)
{
if (file.isDirectory())
{
return true;
}
else if (file.isFile())
{
String lcFileName = file.getName().toLowerCase(Locale.ROOT);
return (lcFileName.endsWith(TXT_FILE_EXTENSION) || lcFileName.endsWith(HTML_FILE_EXTENSION) || lcFileName.endsWith(XML_FILE_EXTENSION) }
return false;
}
@Override
public String getDescription()
{
return Constant.messages.getString("file.format.html");
}
但只有文件类型过滤器中的所有文件和HTML都可用。理想情况下,我还想摆脱所有文件选项。
我还有两种不同的格式.html是要生成的,是否有任何指示我可以添加,以便文件选择器足够聪明,知道我想要哪一个?
答案 0 :(得分:3)
正如@AndrewMcCoist所说,Oracle Tutorial on Filters有点帮助,但我从example得到了我的答案和解决方案。
chooser .addChoosableFileFilter(new FileNameExtensionFilter("PDF Documents", "pdf"));
chooser .addChoosableFileFilter(new FileNameExtensionFilter("MS Office Documents", "docx", "xlsx", "pptx"));
chooser .addChoosableFileFilter(new FileNameExtensionFilter("Images", "jpg", "png", "gif", "bmp"));