无法使用JFileChooser选择文件夹作为目录

时间:2017-02-16 02:51:07

标签: java jfilechooser

我目前正在尝试使用JFileChooser将文件或目录的路径作为字符串返回。但是,我发现在首先选择文件之前,我无法选择文件夹作为我的选择。虽然这不是一个主要问题,但解决起来却令人沮丧。

Gfycat发生了什么:https://gfycat.com/DeadlyDeliriousAzurevase

代码:

public static String openFileChooser()
{
    int returnValue = fileChoose.showOpenDialog(null);
    if(returnValue == JFileChooser.APPROVE_OPTION)
    {
        fileChoose.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
        return (fileChoose.getSelectedFile().getAbsoluteFile().toString());
    }
    else
    {
        return "null";
    }

}

非常感谢帮助,谢谢!

2 个答案:

答案 0 :(得分:1)

您已经设置了文本选择模式,您已经显示了对话框并且用户点击了该按钮。它在那时没有任何影响。你需要在之前设置它来显示文件选择器对话框。

您需要升级为方法中第一行的行是:

fileChoose.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);

答案 1 :(得分:0)

您应该将代码更改为

JFileChooser fileChooser = new JFileChooser();
fileChooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
int returnValue = fileChooser.showOpenDialog(null);
if (returnValue == JFileChooser.APPROVE_OPTION) {
    System.out.println(fileChooser.getSelectedFile().getAbsoluteFile().toString());
} else {
    System.out.println("Empty");
}

确保调用
fileChooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
在打开对话框之前