无法使用 JFileChooser select 文件夹作为目录
Cannot select folders as directories using JFileChooser
我目前正在尝试使用 JFileChooser return 文件或目录的路径作为字符串。但是,我发现在我先选择一个文件之前,我无法选择一个文件夹作为我的选择。虽然这不是主要问题,但解决起来却令人沮丧。
正在发生的事情的 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";
}
}
非常感谢您的帮助,谢谢!
您正在设置文件选择模式在您显示了对话框并且用户单击了按钮之后。在那个时候它不会有任何影响。您需要在显示文件选择器对话框之前设置它。
您需要向上移动成为方法中第一行的行是:
fileChoose.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
您应该将代码更改为
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);
在你打开对话框之前
我目前正在尝试使用 JFileChooser return 文件或目录的路径作为字符串。但是,我发现在我先选择一个文件之前,我无法选择一个文件夹作为我的选择。虽然这不是主要问题,但解决起来却令人沮丧。
正在发生的事情的 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";
}
}
非常感谢您的帮助,谢谢!
您正在设置文件选择模式在您显示了对话框并且用户单击了按钮之后。在那个时候它不会有任何影响。您需要在显示文件选择器对话框之前设置它。
您需要向上移动成为方法中第一行的行是:
fileChoose.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
您应该将代码更改为
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);
在你打开对话框之前