`

文件选择器演示程序

阅读更多
<!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>-->  1 ////////////////////////////////////////////////////////////////////////////////////////////
 2 //
 3 //  @name JFileChooserDemo.java
 4 //
 5 //  @discription 文件选择器演示程序
 6 //
 7 //  @author hcm
 8 //
 9 //  @date 2006-12
10 //
11 ////////////////////////////////////////////////////////////////////////////////////////////
12 
13 import java.awt.*;
14 import java.awt.event.*;
15 import javax.swing.*;
16 import java.io.*;
17 
18 //文件选择器演示
19 
20 public class JFileChooserDemo extends JFrame {
21     private JFileChooser chooser;  //文件选择器
22     private JButton button;  //选择文件按钮
23     private JComboBox comboBox;  //用于设定文件对话框作用(打开还是保存文件)
24     
25     public JFileChooserDemo() {
26         super("JFileChooser 演示");  //调用父类构造函数
27         Container contentPane = getContentPane();  //得到容器
28         contentPane.setLayout(new FlowLayout());  //设置布局管理器为Flowlayout
29         chooser=new JFileChooser();  //初始化文件选择器
30         button = new JButton("选择文件");  //初始化按钮
31         comboBox=new JComboBox();  //初始化组合框
32         comboBox.addItem("打开");  //增加组合框列表内容
33         comboBox.addItem("保存");
34         contentPane.add(comboBox);  //增加组件到容器
35         contentPane.add(button);
36         
37         button.addActionListener(new ActionListener() {  //按钮事件处理
38             public void actionPerformed(ActionEvent e) {
39                 int state;  //文件选择器返回状态
40                 //  chooser.removeChoosableFileFilter(chooser.getAcceptAllFileFilter());  //移去所有文件过滤器
41                 // chooser.addChoosableFileFilter(new MyFileFilter("gif","图像文件"));   //增加文件过滤器,接爱gif文件
42                 
43                 if (comboBox.getSelectedIndex()==0)  //组合框为"打开"
44                     
45                 {
46                     System.out.println("~~~~~~~~~~~~~"+0);
47                     state=chooser.showOpenDialog(null);   //显示打开文件对话框
48                     System.out.println("zhuangtai===="+state);
49                 } else {
50                     System.out.println("~~~~~~~~~~~~~"+1);
51                     state=chooser.showSaveDialog(null);  //显示保存文件对话框
52                 }
53                 
54                 File file = chooser.getSelectedFile();  //得到选择的文件
55                 if(true == ( file != null) ) {
56                     System.out.println(file.toString());
57                 }
58                 if(file != null && state == JFileChooser.APPROVE_OPTION) {  //选择了文件并点击了打开可保存按钮
59                     JOptionPane.showMessageDialog(null, file.getPath()); //显示提示信息
60                 } else if(state == JFileChooser.CANCEL_OPTION) {  //点击了撤销按钮
61                     JOptionPane.showMessageDialog(null"退出!");  //显示提示信息
62                 } else if(state == JFileChooser.ERROR_OPTION) {
63                     JOptionPane.showMessageDialog(null"错误!");  //显示提示信息
64                 }
65             }
66         });
67         
68         this.setSize(200,100);  //设置窗口大小
69         this.setVisible(true);  //设置窗口可见
70         this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  //关闭窗口时退出程序
71     }
72     
73     public static void main(String args[]) {
74         new JFileChooserDemo();
75     }
76 }
77 

再加个过滤器:
<!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--> 1 import java.io.File;
 2 import javax.swing.filechooser.FileFilter;
 3 
 4 //文件过滤器
 5 
 6 public class MyFileFilter extends FileFilter
 7 {
 8     
 9     String ends;  //文件后缀
10     String description;  //文件描述文字
11     
12     public MyFileFilter (String ends, String description)
13     { //构造函数
14         this.ends = ends;  //设置文件后缀
15         this.description=description;  //设置文件描述文字
16     }
17     
18     public boolean accept (File file)
19     {  //重载FileFilter中的accept方法
20         if (file.isDirectory ())  //如果是目录,则返回true
21             return true;
22         String fileName = file.getName ();  //得到文件名称
23         if (fileName.toUpperCase ().endsWith (ends.toUpperCase ()))  //把文件后缀与可接受后缀转成大写后比较
24             return true;
25         else
26             return false;
27     }
28     
29     public String getDescription ()
30     {  //返回文件描述文字
31         return description;
32     }
33 }

分享到:
评论

相关推荐

    java文件选择器

    ### Java Swing 文件选择器知识点详解 #### 一、概述 Java Swing 提供了一种非常方便的方式来让用户选择文件或目录,这主要通过 `JFileChooser` 类实现。`JFileChooser` 是一个标准的文件对话框,可以用来打开或者...

    VB6.0 获取文件属性的演示程序源代码.rar

    用户可以通过界面上的文件选择器来指定文件,然后在程序右侧查看选定文件的详细属性。文件名通常是文件的基本标识,而文件类型通常基于文件的扩展名;文件属性可能包括只读、隐藏、系统、存档等标志;文件图标则通常...

    SVM分类器演示程序

    通过这个SVM演示程序,用户可以直观地理解这些概念,并观察不同参数设置对模型性能的影响。这对于初学者掌握SVM理论和实践操作大有裨益。同时,这也展示了Java Applet技术在教育和示例演示中的应用,尽管现代Web开发...

    微信小程序Demo:漂亮的地址选择器

    总的来说,"微信小程序Demo:漂亮的地址选择器"为开发者提供了一个参考实例,演示了如何在小程序中构建一个功能齐全、美观的地址选择组件。通过学习和理解这个Demo,开发者可以更好地掌握微信小程序的组件化开发方法...

    明华RF35读卡器演示说明

    3. **打开软件**:使用提供的MWRF.chm文件,这通常是一个帮助文件,包含了详细的程序说明书和操作指南。 4. **配置设置**:根据说明书中的指示,配置读卡器的参数,如波特率、工作模式等。 5. **读写操作**: - *...

    单片机演示程序共20个程序有LED\lcd\等

    单片机演示程序是学习和理解微控制器工作原理及应用的重要工具。这些程序通常涵盖了基本的硬件控制和软件编程技术,对于初学者来说是宝贵的资源。在这个压缩包中,我们有20个不同的示例程序,涉及LED显示和LCD显示等...

    汉诺塔演示程序 java程序源代码

    根据提供的文件信息,我们可以分析并总结出以下与“汉诺塔演示程序 Java程序源代码”相关的知识点: ### 1. 汉诺塔问题简介 汉诺塔(Hanoi Tower)是一个经典的递归问题,源自一个古老的传说。传说中,在世界末日...

    通用处理机调度演示程序及课程设计报告

    在提供的压缩包文件中,"通用处理机调度演示程序"很可能包含了上述各个模块的实现代码和详细说明,供学习者研究和调试。通过对程序的分析和实验,学生能够更深入地理解和应用处理机调度理论,为将来在实际操作系统...

    产品演示程序

    在实际的应用场景中,"产品演示程序"可能还包括其他Swing组件,如JScrollPane用于滚动视图,JOptionPane用于弹出对话框提示用户操作,甚至是JFileChooser用于让用户选择文件。所有这些组件协同工作,为用户提供了一...

    GP演示程序.rar

    在压缩包中的"GP演示程序"文件中,每个型号的演示都可能涵盖以下知识点: 1. **基本操作**:包括屏幕唤醒、触摸响应、菜单导航、按钮操作等基本交互功能。 2. **图形界面设计**:展示如何创建、编辑和显示各种图形...

    常用控件演示程序

    在提供的文件列表中,我们可以看到一些可能与这个演示程序相关的资源文件: - **WZSAVE.BMP、Close.bmp、WZUNDO.BMP、HELP.BMP**:这些可能是程序中的按钮或菜单项的位图资源,用于定义UI元素的外观。例如,"WZSAVE...

    Photoshop样式的角度和高度选择器控件「DEMO演示」

    TestApp.exe则可能是一个测试应用程序,用于演示如何使用这个DLL来操作Photoshop中的角度和高度选择器。开发者可以通过运行这个应用程序,了解如何在实际项目中集成和使用这些控件。 通过这样的DEMO,开发者不仅...

    C# 自定义文件浏览器

    【C# 自定义文件浏览器】是一种在.Net框架下构建的扩展功能,用于克服原生文件选择控件的局限性。通常,.Net自带的文件选择对话框(OpenFileDialog或SaveFileDialog)不允许用户选择正在被系统或其他进程占用的文件...

    利用css+javascript实现的一个日期选择器代码

    此文件可能包含了示例的HTML结构和JavaScript引用,以及用于触发日期选择器的事件处理程序。 3. `js`:这是一个JavaScript文件,很可能包含了实现日期选择器逻辑的代码。JavaScript部分可能包括以下功能: - 初始...

    ## JSP 文件管理器 v1.001 ###详情: JSP 文件管理器 演示测试帐号:test 密码:test

    JSP(JavaServer Pages)文件管理器是一款基于Java技术开发的Web应用程序,它允许用户通过浏览器进行文件的上传、下载、删除、重命名等操作。版本v1.001可能是该软件的一个初期版本,提供基础的功能和性能优化。 ##...

    Java语言编写的Hanoi图形演示程序(汉诺塔)

    在这个“Java语言编写的Hanoi图形演示程序”中,我们可以预期以下几个关键知识点: 1. **Java GUI**:为了实现图形界面,开发者可能使用了Java的Swing或JavaFX库。这两个库提供了构建用户界面所需的组件,如按钮、...

    七巧板演示程序和代码

    【七巧板演示程序与源代码解析】 七巧板,源于中国古代的智力玩具,由七块不同形状的木板组成,可以拼出各种图形。在计算机编程领域,七巧板被用于教学和游戏开发,帮助学习者理解几何形状、空间布局和逻辑思维。本...

    C++基于Qt编写的BP神经网络分类器演示程序源码.zip

    这是一个基于C++编程语言,并利用Qt框架开发的BP神经网络分类器的演示程序源代码。该程序主要用于展示如何使用BP(Back Propagation)神经网络进行数据分类。BP神经网络是一种广泛应用的人工神经网络模型,主要用于...

    Java制作文件选择对话框.rar

    在Java编程中,创建文件...总之,Java的`JFileChooser`是实现文件选择对话框的强大工具,它使开发者能够轻松地集成文件选择功能到Java应用程序中。通过熟练掌握`JFileChooser`的使用,可以提升用户体验并简化文件操作。

    RFID读写器示例程序

    9. **示例程序分析**:在提供的压缩包文件中,可能包含了用于演示以上概念的源代码。通过阅读和理解这些代码,可以深入学习RFID读写器的实际应用,包括如何初始化串口、发送读写命令、处理返回数据以及实现加密功能...

Global site tag (gtag.js) - Google Analytics