Swing015——JFileChooser:文件选择器

Posted 江州益彤

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Swing015——JFileChooser:文件选择器相关的知识,希望对你有一定的参考价值。

一、API简介





二、实例

package component;

import java.awt.Component;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;

import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.filechooser.FileNameExtensionFilter;

public class TestJFileChooser 
	public static void main(String[] args) 
		// 1、创建一个顶层容器
		final JFrame jFrame = new JFrame("JLabel标签");
		// 设置大小
		jFrame.setSize(600, 400);
		// 设置位置居中(在设置大小之后)
		jFrame.setLocationRelativeTo(null);
		// 设置关闭时推出虚拟机JVM
		jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

		// 2、创建一个中间容器
		JPanel jPanel = new JPanel();

		// 创建按钮
		JButton jButtonOpen = new JButton("打开");

		jButtonOpen.addActionListener(new ActionListener() 
			@Override
			public void actionPerformed(ActionEvent e) 
				// 显示打开文件选择器
				showFileOpen(jFrame);
			

		);

		jPanel.add(jButtonOpen);

		// 创建按钮
		JButton jButtonSave = new JButton("保存");

		jButtonSave.addActionListener(new ActionListener() 
			@Override
			public void actionPerformed(ActionEvent e) 
				// 保存文件
				showFileSave(jFrame);
			

		);

		jPanel.add(jButtonSave);

		// 将中间容器添加到顶层容器中
		jFrame.setContentPane(jPanel);
		// 显示窗口
		jFrame.setVisible(true);
	

	// 打开选择文件
	private static void showFileOpen(Component parent) 
		// 创建文件选择器
		JFileChooser fileChooser = new JFileChooser();
		// 设置当前文件夹位置
		fileChooser.setCurrentDirectory(new File("C:\\\\Users\\\\Administrator\\\\Desktop"));// 当前文件夹
		// 设置选择模式(选择文件和它的目录)
		fileChooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
		// 是否多选
		fileChooser.setMultiSelectionEnabled(true);
		// 添加过滤器(文件名过滤)
		fileChooser.addChoosableFileFilter(new FileNameExtensionFilter("压缩文件(*.zip,*.rar)", "zip", "rar"));

		// 接收结果
		int result = fileChooser.showOpenDialog(parent);// 判断是否选择了文件
		if (result == JFileChooser.APPROVE_OPTION) 
			// 取得文件
			File[] filse = fileChooser.getSelectedFiles();
			for (File file : filse) 
				System.out.println(file.getName());
			
		

	

	// 显示文件保存
	static void showFileSave(Component parent) 
		// 创建
		JFileChooser chooser = new JFileChooser(new File("."));
		// 设置默认名称
		chooser.setSelectedFile(new File("good.txt"));
		// 显示
		int result = chooser.showSaveDialog(parent);
		// 判断是否点了确定
		if (result == JFileChooser.APPROVE_OPTION) 
			// 取得文件(从chooser中取得文件所存放的路径)
			File file = chooser.getSelectedFile();
			// 打印绝对路径
			System.out.println(file.getAbsolutePath());
		
	




以上是关于Swing015——JFileChooser:文件选择器的主要内容,如果未能解决你的问题,请参考以下文章

如何从 JFileChooser(JAVA Swing) 中禁用文件操作、文件选择和过滤面板?

打开JFileChooser并返回所选文件的Swing ActionListener

使用JFileChooser实现在指定文件夹下批量添加根据“数字型样式”或“非数字型样式”命令的文件夹

JFileChooser 中文API

打开文件的功能代码 JFileChooser

将 JFileChooser 与 Swing GUI 类和侦听器一起使用