JFileChooser对话框 ——基本应用
目录
## 基本概述:
JDK1.2版本后,javax.swing.JComponent类下的实现子类JFileChooser为用户提供了一种简单的机制来
选择所需文件,这样我们可以通过这个组件来完成目标选取,进而上传某些文件或者将所需文件保存到
本地,也就是文件导航窗口
## 常用构造:
参数用以指定对话框打开时所在路径
JFileChooser() 用户默认目录
JFileChooser(File currentDirectory) 指定文件路径【常用】
JFileChooser(FileSystemView fsv) 系统文件目录
[注意]:
可以使用FileSystemView接口获取一些系统文件目录的File对象进行File操作
## 常用方法:详见JDK文档
setFileSelectionMode(int p1) 选择模式
注:p1可选项
DIRECTORIES_ONLY: 仅显示目录
FILES_ONLY: 仅显示文件
FILES_AND_DIRECTORIES: 文件 + 目录【常用】
showDialog(Component p1,String p2) 视图设置
p1:显示位置
p2:自定义提交按钮名
[注意]:
1.参数p1为打开对话框时所依赖的容器或触发弹出动作的组件,对话框将以此为基准设定显示位置
this:程序中央
null:屏幕中央
组件:组件中央(如“...”按钮)
2.参数p2为指定自定义提交按钮名,同时也会指定弹出的对话框标题
3.官方已提供常用对话框相应方法
showOpenDialog(Component p1) 文件打开对话框
showSaveDialog(Component p1) 文件保存对话框
addActionListener(ActionListener p1) 添加动作监听器
p1:用以监听用户某些动作,并触发相应处理操作
addChoosableFileFilter(FileFilter p1) 添加可选过滤器
p1:用以过滤此选择对话框中可显示的文件
setMultiSelectionEnabled(boolean p1) 复选设置
p1:是否允许选择多个目标,true允许/false禁止
getSelectedFile() 返回选中的文件
getSelectedFiles() 返回选中的多个文件
[注意]:
前置需要开启复选设置,返回的多个文件将以数组形式存储,即File[]
## 示例Demo:
/**
* 获取选择目录路径
*
* @param title
* @return
*/
private String selectPath(String title) {
//实例化JFileChooser对象
JFileChooser jfc = new JFileChooser();
//设置选择模式:目录
jfc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
//视图设置
jfc.showDialog(new JLabel(), title);
//获取用户选择目录
File file = jfc.getSelectedFile();
if (file == null) {
return null;
}
System.out.println("文件夹:"+file.getAbsolutePath());
return file.getPath();
}