`
zengxx1989
  • 浏览: 295139 次
  • 性别: Icon_minigender_1
  • 来自: 湖南
社区版块
存档分类
最新评论

swing 中通过 FileFilter 实现打开指定格式的文件

阅读更多
今天做到要打开指定格式的文件,在swing 中,这就不像在Winform 中一样了,只要设置一下,但也比较简单
实现过滤
package com.openfile.biz;

import java.io.File;

import javax.swing.filechooser.FileFilter;

/**
 * 
 * @author zengxx
 *
 */
public class TxtFileFilter extends FileFilter {

	/**
	 * 重写接收文件方法 
	 * @return true 表示显示出来
	 * false 表示不显示出来
	 */
	public boolean accept(File f) {
		if (f.isDirectory()) {
			return true;
		}
		//显示满足条件的文件
		return f.getName().endsWith(".txt") || f.getName().endsWith(".java");
	}

	/**
	 * 这就是显示在打开框中
	 */
	public String getDescription() {
		
		return "*.txt,*.java";
	}

}


测试类
package com.openfile.ui;

import java.awt.EventQueue;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;

import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;

import com.openfile.biz.TxtFileFilter;

public class AppFrame {

	private JFrame frame;

	/**
	 * Launch the application
	 * @param args
	 */
	public static void main(String args[]) {
		EventQueue.invokeLater(new Runnable() {
			public void run() {
				try {
					AppFrame window = new AppFrame();
					window.frame.setVisible(true);
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		});
	}

	/**
	 * Create the application
	 */
	public AppFrame() {
		createContents();
	}

	/**
	 * Initialize the contents of the frame
	 */
	private void createContents() {
		frame = new JFrame();
		frame.setTitle("打开指定格式的文件");
		frame.getContentPane().setLayout(null);
		frame.setBounds(100, 100, 510, 191);
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

		final JTextField txtFilePath = new JTextField();
		txtFilePath.setBounds(100, 60, 232, 22);
		frame.getContentPane().add(txtFilePath);

		final JLabel label = new JLabel();
		label.setText("文件");
		label.setBounds(29, 62, 66, 18);
		frame.getContentPane().add(label);

		final JButton btnBrower = new JButton();
		btnBrower.addActionListener(new ActionListener() {
			public void actionPerformed(final ActionEvent e) {
				JFileChooser chooser=new JFileChooser();
				chooser.setFileFilter(new TxtFileFilter());
				int resultVal=chooser.showOpenDialog(null);
				if (resultVal==JFileChooser.APPROVE_OPTION) {  //点击确定
					String filePath=chooser.getSelectedFile().getAbsolutePath();
					txtFilePath.setText(filePath);
				}
			}
		});
		btnBrower.setText("浏览");
		btnBrower.setBounds(363, 57, 106, 28);
		frame.getContentPane().add(btnBrower);
	}

}
分享到:
评论

相关推荐

    java swing-FileFilter的使用

    FileFilter 是 Java 提供的一个接口,用于过滤文件列表...当需要从文件列表中筛选出符合特定条件的文件时,可以使用 FileFilter 来实现。它定义了 accept(File pathname) 方法,允许开发者根据自己的需求编写过滤逻辑。

    FileFilter实例,并实现文件的拷贝

    FileFilter实例,搜索文件夹下特定的文件,并对这些文件进行提取,将文件拷贝到另一文件夹下

    文件内容检索工具 filefilter 1.0

    FileFilter简介:使用此工具可以根据输入的关键词(以逗号分开),在word文档中匹配筛选关键词,并给出关键词匹配查找到的个数,根据目标关键词的匹配情况将根据分捡条件自动将简历分捡到不同的目录中,方便使用。...

    文件内容检索工具 filefilter_Trial-limit100.zip

    Filefilter 简介:本版本为最新试用版,文件限制个数为100,增加了结果排序功能、忽略大小写模糊查找功能,使用此工具可以根据输入的关键词(以逗号分开),在word文档中匹配筛选关键词,并给出关键词匹配查找到的...

    FileFilter

    继承filefilter,可以自定义后缀名,后缀描述。配合office_wrapper.jar包使用,提供了保存word格式功能的函数。

    FileFilter-文件隐藏.rar

    基于minifilter的文件隐藏 已测试过 R0与R3代码.. 【注意下载完进行评论时,要选择评论框上面的星级,这样减掉的分不仅能原数返回,而且还能多赠1分】

    编写一个java应用程序将一个包含多个子目录和文件的目录复制到另外一个指定的目录下

    通过此次实验,我初步掌握了复制的目录中包含的文件数和子目录层次未知,以及必须在程序执行时获得这些信息编程的能力。更进一步的熟悉了static 、getDrives等等与之用法相类似的语法类。增强了自己学好JAVA的信心。

    FileFilter.zip

    win10 1803 64位系统,文件过滤驱动 隐藏指定文件,三环下应用程序调用windowsAPI获取不到被隐藏的文件。 添加白名单进程,可以看到被隐藏进程 文件是debug64编译,驱动未签名,仅供虚拟机开启测试模式使用,测试前...

    Java 的 FileFilter文件过滤与readline读行操作实例代码

    介绍了Java 的 FileFilter文件过滤与readline读行操作实例代码,有需要的朋友可以参考一下

    commons-io-2.CHM

    openInputSteam:打开指定文件的输入流。 readFileToString:将文件内容作为字符串返回。 readLines:将文件内容按行返回到一个字符串数组中。 size:返回文件或目录的大小。 write:将字符串内容直接写到文件...

    jdk api-FileFilter基础、应用、实战

    jdk api-FileFilter基础、应用、实战

    day08_File、递归、FileFilter2

    day08_File、递归、FileFilter2

    JAVA文件监控(源码)

    通过commons-io监测文件。可检查目录的文件新建、修改、删除等变化。 // 监控目录 String rootDir = "c:\\Downloads"; // 轮询间隔 10 秒 long interval = TimeUnit.SECONDS.toMillis(10); //文件格式 IOFileFilter ...

    Silverlight多文件上传 v4.2源码

    FileFilter: 文件类型过滤, 假如只使用jpeg文件: FileFilter=Jpeg (*.jpg) |*.jpg CustomParam: 自定义参数, 在WCF webservice可用 DefaultColor: 控件的默认颜色, 例如: LightBlue ChunkSize: 上传块中的每个字节...

    以二进制形式读取外部图片文件(AIR)

    private var openItem:NativeMenuItem = new NativeMenuItem("打开文件"); private var quitItem:NativeMenuItem = new NativeMenuItem("退出"); private var helpMenu:NativeMenu = new NativeMenu; private ...

    java编写的类似文本编辑器的代码

    import javax.swing.filechooser.FileFilter; import javax.swing.text.BadLocationException; import javax.swing.tree.DefaultMutableTreeNode; public class SimpleEditor extends JFrame //继承窗体类 { /*...

    Java图片查看器 源代码

    import javax.swing.filechooser.FileFilter;//过滤器、有关使用文件扩展名进行过滤的实现 import java.awt.image.*;//图形图像的所有类的超类。必须以特定于平台的方式获取图像。 import java.awt.geom....

    FileFilter3_c#图片剪裁工具_

    按照要求剪裁指定大小图片。自动检测选定根目录下的所有图片。

    java核心编程之文件过滤类FileFilter和FilenameFilter

    主要为大家详细介绍了java文件过滤类FileFilter和FilenameFilter,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

    Word文档分拣工具v1.81免费安装版

    Word文档分拣工具是一款好用的Word文档分拣软件,可以按照用户指定的条件将指定文档中的doc、docx文档分拣归类,支持根据页面分拣、根据Word文档内容中表格数分拣以及根据是否有密码就行分拣,帮助用户轻松将大量的...

Global site tag (gtag.js) - Google Analytics