Swing文件选择器(JFileChooser)的使用

在程序开发中,我们经常会使用到文件选择器来读取本地文件或者保存文件到本地的一个目录中。Java Swing的文件选择器是JFileChooser,今天我们就来学习一下JFilechooser的使用

一、构造方法

  • 构造方法1: JFileChooser():创建一个指向用户默认目录的 JFileChooser。
    在这里插入图片描述

  • 构造方法2: JFileChooser(File currentDirectory):使用指定 File 作为路径来创建JFileChooser。
    在这里插入图片描述

  • 构造方法3: JFileChooser(String currentDirectoryPath):创建一个使用指定路径的 JFileChooser。在这里插入图片描述

二、设置文件的打开模式:(文件、文件夹、文件+文件夹)

setFileSelectionMode(int mode)

(1)JFileChooser.FILES_ONLY: 只能选文件;

(2) JFileChooser.DIRECTORIES_ONLY: 只能选文件夹;

(3)JFileChooser.FILES_AND_DIRECTORIES: 文件和文件夹都可以选。

三、设置选择模式:(单选文件或多选文件)

setMultiSelectionEnabled(boolean b)//默认是false(单选)

四、添加文件过滤选择器,也就是允许你选择的文件类型。

addChoosableFileFilter(FileFilter filter)

fc.addChoosableFileFilter(new FileFilter() {
			
			@Override
			public String getDescription() {
				return "Excel文件(*.xls)";
			}
			
			@Override
			public boolean accept(File f) {
				if(f.getName().toLowerCase().endsWith(".xls")) {
					return true;
				}
				return false;
			}
		});

在这里插入图片描述

五、设置默认的文件过滤器

setFileFilter(FileFilter filter)

jfc.setFileFilter(new FileFilter() {
			
			@Override
			public String getDescription() {
				return "Excel文件(*.xls)";
			}
			
			@Override
			public boolean accept(File f) {
				if(f.getName().toLowerCase().endsWith(".xls")) {
					return true;
				}
				return false;
			}
		});

在这里插入图片描述

六、设置被选中的文件

setSelectedFile(File file)//单个文件
setSelectedFiles(File[] selectedFiles)//多个文件

七、打开文件选择器对话框

int result = showOpenDialog(Component parent):弹出一个 “Open File” 文件选择器对话框。
在这里插入图片描述

int result = showSaveDialog(Component parent):弹出一个 “Save File” 文件选择器对话框。
在这里插入图片描述

int result = jfc.showDialog(null, “选择文件”);
在这里插入图片描述
result的值有三种:

(1)JFileChooser.CANCEL_OPTION: 点击了取消或关闭 ;

(2) JFileChooser.APPROVE_OPTION: 点击了确认或保存 ;

(3)JFileChooser.ERROR_OPTION: 出现错误。

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值