package com.soft.test;

 //AWT: FileDialog类 + FilenameFilter类 可以实现本功能
//Swing: JFileChooser类 + FileFilter类 可以实现本功能
//
//该类用来测试打开文件和保存文件的对话框 import java.awt.*; //为了使用布局管理器
import java.awt.event.*;//用来处理事件
import javax.swing.*; //最新的GUI组件
import java.io.*; //读写文件用 public class filechooser { private JFrame frm;
private JButton open;
private JButton read;
private JPanel p;
private File f;
private JFileChooser fc;
private int flag; public filechooser() {
frm = new JFrame("java");
open = new JButton("open");
read = new JButton("read");
p = new JPanel();
fc = new JFileChooser(); Container c = frm.getContentPane();
c.setLayout(new FlowLayout()); c.add(p);
p.add(open);
p.add(read); //注册按钮事件
open.addActionListener(new action());
read.addActionListener(new action()); frm.setSize(, );
frm.setVisible(true);
//设置默认的关闭操作
frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
} private void openFile() //打开文件
{
//设置打开文件对话框的标题
fc.setDialogTitle("Open File"); //这里显示打开文件的对话框
try {
flag = fc.showOpenDialog(frm);
} catch (HeadlessException head) { System.out.println("Open File Dialog ERROR!");
} //如果按下确定按钮,则获得该文件。
if (flag == JFileChooser.APPROVE_OPTION) {
//获得该文件
f = fc.getSelectedFile();
System.out.println("open file----" + f.getName());
}
} private void readFile() //保存文件
{
String fileName; //设置保存文件对话框的标题
fc.setDialogTitle("Save File"); //这里将显示保存文件的对话框
try {
flag = fc.showSaveDialog(frm);
} catch (HeadlessException he) {
System.out.println("Save File Dialog ERROR!");
} //如果按下确定按钮,则获得该文件。
if (flag == JFileChooser.APPROVE_OPTION) {
//获得你输入要保存的文件
f = fc.getSelectedFile();
//获得文件名
fileName = fc.getName(f);
//也可以使用fileName=f.getName();
System.out.println(fileName);
}
} //按钮监听器类内部类
class action implements ActionListener {
public void actionPerformed(ActionEvent e) {
//判断是哪个按纽被点击了
if (e.getSource() == open)
openFile();
else if (e.getSource() == read)
readFile();
}
} public static void main(String[] args) {
new filechooser();
}
}

java中文件保存、打开文件对话框的更多相关文章

  1. 利用aspose-words 实现 java中word转pdf文件

    利用aspose-words  实现 java中word转pdf文件 首先下载aspose-words-15.8.0-jdk16.jar包 引入jar包,编写Java代码 package test; ...

  2. java中多种方式读文件

    转自:http://www.jb51.net/article/16396.htm java中多种方式读文件 一.多种方式读文件内容. 1.按字节读取文件内容 2.按字符读取文件内容 3.按行读取文件内 ...

  3. [转] - 在mac的终端中使用sublime打开文件

    在mac的终端中使用sublime打开文件 使用sublime提供的命令行工具.这个命令行工具位于 /Applications/Sublime\ Text\ 2.app/Contents/Shared ...

  4. JAVA中比较两个文件夹不同的方法

    JAVA中比较两个文件夹不同的方法,可以通过两步来完成,首先遍历获取到文件夹下的所有文件夹和文件,再通过文件路径和文件的MD5值来判断文件的异同.具体例子如下: public class TestFo ...

  5. java中调用kettle转换文件

    java中调用kettle转换文件 通过命令行也能够调用,然后java中调用命令行代码也能够.这样没有和java代码逻辑无缝集成.本文说明kettle5.1中假设通过其它API和java代码无缝集成: ...

  6. C#中FolderBrowserDialog类打开文件夹使用说明

    C#中FolderBrowserDialog类打开文件夹使用说明   作用:打开文件选择窗口获取文件夹路径.   导入的命名空间为: System.Windows.Forms; 属性:   Descr ...

  7. linux 文件描述符表 打开文件表 inode vnode

      在Linux中,进程是通过文件描述符(file descriptors,简称fd)而不是文件名来访问文件的,文件描述符实际上是一个整数.Linux中规定每个进程能最多能同时使用NR_OPEN个文件 ...

  8. 【转】python qt(pyqt)的文件打开、文件保存、文件夹选择对话框

    import PyQt4.QtCore,PyQt4.QtGui # 获取文件路径对话框 file_name = QFileDialog.getOpenFileName(self,"open ...

  9. 【JVM】Java中的JavaCore/HeapDump文件及其分析方法

    产生时间 Java程序运行时,有时会产生JavaCore及HeapDump文件,它一般发生于Java程序遇到致命问题的情况下. 有时致命问题发生后,Java应用不会死掉,还能继续运行: 但有时致命问题 ...

  10. java中如何设置下载文件

    如果想要设置某一url为下载文件的方法如下 需要设置文件响应类型,使用response.setContentType,比如jpeg格式的图片.如果想要访问该页面时出现下载保存的窗口,使用respons ...

随机推荐

  1. for应用

    应用:迭代法,穷举法.一.迭代法:有一定规律. 每次循环都是从上次运算结果中获得数据,本次运算的结果都是要为下次运算做准备.例:1.100以内所有数的和.2.求阶乘3.求年龄.4.折纸.5.棋盘放粮食 ...

  2. 理解数据点,自变量和因变量(参数和值)ChartControl

    WinForms Controls > Controls > Chart Control > Fundamentals > Charting Basics > Under ...

  3. 《think in python》学习-6

    think in python 有返回函数 我们使用过的内置函数中,有一部分会返回结果,比如 math的 返回值 我们写一个有返回值的函数,计算给定半径的圆的面积,例如这个: def area(rad ...

  4. canvas阴影

    shadowOffsetx 阴影X轴的移动 shadowOffsety 阴影的y轴移动 shadowColor 阴影颜色 shadowBlur 模糊范围 <!DOCTYPE html>&l ...

  5. 图片处理之-Bitmap.Config,jpeg压缩与大小

    关于ARGB_8888.ALPHA_8.ARGB_4444.RGB_565的理解 A:透明度 R:红色 G:绿 B:蓝 Bitmap.Config ARGB_4444:每个像素占四位,即A=4,R=4 ...

  6. linux下不重启加硬盘

    linux下热加载磁盘 临时给虚拟机加了一块硬盘,增加后懒得重启,于是看了看热加载 [root@centos5 ~]# cat /proc/scsi/scsi Attached devices: Ho ...

  7. 剑指offer第10题

    import java.util.Scanner; /* 前两种方法是看最低为是不是为1,不为1则向右移动. 第一种只能对正整数有效,对负数不行,因为负数用的是补码,最高外符号位为1,最后右移动,肯定 ...

  8. error1

     #include<stdio.h>main(){ int a[10],i,m,n,j;   for(i=3;i<10;i++)    scanf("%d",&a ...

  9. centos5.5用phpstudy一键安装配置虚拟主机后,yum配置代理服务器squid

    最近因为工作需要,开发站点需要在lamp环境下跑网站,于是在win7上跑虚拟机装了一个centos5.5的linux 并用集成环境配置了一个lamp环境,这里用的是phpstudy的一键安装包,并配置 ...

  10. Python进阶之匿名函数(关键词lambda)

    匿名函数 .note-content {font-family: "Helvetica Neue",Arial,"Hiragino Sans GB"," ...