如何让JFilechooser只允许用户从一个文件夹中选择?

时间:2011-06-04 19:26:50

标签: java swing jfilechooser

  

可能重复:   How do I restrict JFileChooser to a directory?

    JFileChooser FileC = new JFileChooser("C:\messy");
    int result = FileC.showOpenDialog(this);
    if( result == JFileChooser.CANCEL_OPTION )
    {
        return;
    }

我从文件夹C:\messy开始,但目前用户可以从这个起始位置转到所有目录。

1 个答案:

答案 0 :(得分:4)

Single Root File Chooser将选择限制为单个目录及其子目录。

如果要阻止选择子目录,则还需要添加FileFilter:

chooser.removeChoosableFileFilter( chooser.getAcceptAllFileFilter() );
chooser.addChoosableFileFilter( new FileFilter()
{
    public boolean accept(File f)
    {
        return ! f.isDirectory();
    }

    public String getDescription()
    {
        return "Files only";
    }
});