import java.io.*; import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.filechooser.FileFilter; public class JFileChooserTest { public static void main(String[] args) { FrameFileDialog f = new FrameFileDialog(); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } } class FrameFileDialog extends JFrame implements ActionListener { private JFileChooser fileDialog = null; private Label label = new Label("INFO:", Label.CENTER); private JButton b1, b2; private JTextArea textArea = null; public FrameFileDialog() { super("带文件对话框的窗口"); Container con = this.getContentPane(); con.setLayout(new BorderLayout()); con.setSize(40, 50); b1 = new JButton("打开文件"); b2 = new JButton("保存文件"); b1.addActionListener(this); b2.addActionListener(this); JPanel p = new JPanel(); p.add(b1); p.add(b2); textArea = new JTextArea(20, 30); JScrollPane jsp = new JScrollPane(textArea); fileDialog = new JFileChooser("C:\\"); fileDialog.setControlButtonsAreShown(true); // 设置过滤条件 fileDialog.setFileFilter(new MyFileFilter("java")); fileDialog.setFileFilter(new MyFileFilter("txt")); con.add(jsp, BorderLayout.CENTER); con.add(label, BorderLayout.NORTH); con.add(p, BorderLayout.SOUTH); this.setSize(380,280); this.setVisible(true); //this.pack(); } @Override // 监听器 public void actionPerformed(ActionEvent e) { File file = null; int result; if (e.getSource() == b1) {// OPEN fileDialog.setDialogTitle("打开文件"); result = fileDialog.showOpenDialog(this); textArea.setText(""); if (result == JFileChooser.APPROVE_OPTION) { file = fileDialog.getSelectedFile(); label.setText("选择的文件是:" + file.getName()); } else if (result == JFileChooser.CANCEL_OPTION) { //JOptionPane.showMessageDialog(this, "你还未选择文件"); label.setText("未选中文件"); return; } //选择了文件 FileInputStream fileStream = null; try { fileStream = new FileInputStream(file); } catch (FileNotFoundException e1) { label.setText("文件没找到"); e1.printStackTrace(); return; } int readByte; byte buffer[]=new byte[1024]; try { while ((readByte = fileStream.read(buffer)) !=-1) { textArea.append(new String(buffer,0,readByte)); } //流使用完后关闭 fileStream.close(); } catch (IOException e1) { label.setText("读取文件出错"); e1.printStackTrace(); } } else if (e.getSource() == b2) {// 保存文件 fileDialog.setDialogTitle("保存文件"); result = fileDialog.showSaveDialog(this); file = null; if (result == JFileChooser.APPROVE_OPTION) { file = fileDialog.getSelectedFile(); label.setText("保存的文件是:" + file.getName()); } else if (result == JFileChooser.CANCEL_OPTION) { label.setText("没有选择任何文件"); } FileOutputStream fileStream1 = null; PrintWriter pw=null; if (file != null) { try { fileStream1 = new FileOutputStream(file); } catch (FileNotFoundException e1) { label.setText("文件没有发现"); e1.printStackTrace(); return; } String content = textArea.getText(); try { pw=new PrintWriter(fileStream1); pw.print(content); pw.close(); // fileStream1.write(content.getBytes()); fileStream1.close(); } catch (IOException e1) { label.setText("写文件出错"); e1.printStackTrace(); } } } } } /** * 文件过滤器,让文件打开对话框只显示特定格式的文件 * @author Administrator * */ class MyFileFilter extends FileFilter { private String ext; MyFileFilter(String ext) { this.ext = ext; } @Override public boolean accept(File file) { if (file.isDirectory()) return true; String fileName = file.getName(); int index = fileName.lastIndexOf("."); if (index > 0 && index < fileName.length() - 1) { String extension = fileName.substring(index + 1); if (extension.toLowerCase().equals(ext)) return true; } return false; } @Override public String getDescription() { if (ext.equals("java")) { return "Java source file(*.java)"; } if (ext.equals("txt")) { return "TXT file(*.txt)"; } return ""; } }
发表评论
-
CSDN表情批量下载
2014-07-24 16:55 673CSDN评论时有很多有趣的表情,可以通过程序将这些表 ... -
南京地铁票价查询
2014-07-16 16:27 1000查看南京地铁各个站点间的距离 import java.io ... -
在指定路径下搜索含指定关键词的所有文件
2012-10-28 08:58 1109这个功能类似notepad++的文件搜索功能,如全词匹配“in ... -
java系统托盘
2012-07-20 22:43 980import java.awt.*; import j ... -
多线程实例
2012-07-20 22:08 765public class Class1 { publ ... -
读配置文件,传参数,打印message
2012-06-21 19:43 1059为了将来维护,message内容可能需要更改 ... -
java 线程 模拟卖票
2012-05-27 13:35 1010package thread; import jav ... -
java URLConnection
2012-05-27 13:36 1236package net; import java.ne ... -
java Vector
2012-05-26 20:40 797import java.util.Vector; im ... -
java applet GUI 2D
2012-05-26 20:09 1063package applet; import java.aw ... -
java AdjustmentListener,Scrollbar的使用
2012-05-26 20:03 1042package gui.event; import j ... -
java TextListener的使用
2012-05-26 19:57 1512package gui.event; import ... -
多线程模拟测试网站并发性
2012-05-25 21:11 2913网站开发完了后,需要测试网站能支持多少用户并发访问,下面的j ... -
java 字节流使用
2012-05-21 14:04 1104package advance.test; import ... -
java通过apache的POI写EXCEL
2012-04-22 22:05 1971Apache POI是Apache 软件 基金会的开放 ... -
java全屏
2012-04-22 14:54 1085下面的代码演示了如何让JFrame全屏显示: impo ... -
JDBC-ODBC桥连接方式连接MS ACCESS,配置数据源
2012-04-22 13:59 1407下面是通过jdbc-odbc连接ms access数据库的一种 ... -
java获取系统相关信息
2012-01-12 22:12 1609下面的代码可以获取系统的环境变量,操作系统、处理器、编码和语言 ...
相关推荐
Java中的`JFileChooser`是Swing库提供的一种用于在用户界面中实现文件选择功能的组件。它允许用户从本地文件系统中打开、保存或者选择文件,对于任何涉及到用户需要交互选择文件的应用程序,如文件加密器,都是必不...
Java的JFileChooser类的使用详解 JFileChooser是一个Java类,提供了一个文件对话框,用于选择文件或文件夹。它可以通过API打开一个模态对话框,或直接实例化并加入到其他组件。 直接使用JFileChooser打开对话框 ...
1. JFileChooser:这是用来打开文件选择对话框的组件,用户可以从中选择一个或多个文件或目录。在资源管理器中,它可能被用作打开或保存文件的入口。 2. JTree:这个组件可以展示文件系统的目录结构。每个节点代表...
Java Swing组件JFileChooser用法实例分析 Java Swing组件JFileChooser是Swing中经常用到的一个控件,主要用于文件选择和文件管理。下面将结合实例形式分析JFileChooser文件选择器的功能、使用方法及相关注意事项。 ...
"Java中文件选择器JFileChooser.showSaveDialog实现默认文件名的解决方案" 在 Java 中,文件选择器 JFileChooser 是一个常用的组件,用于选择打开文件或保存文件。然而,在使用 JFileChooser 的时候,我们经常会...
`JFileChooser`是Java Swing库中的一个组件,用于在用户界面中显示文件选择对话框,让用户能够选择文件或目录。这个组件在开发需要用户交互进行文件操作的应用程序时非常有用。下面将详细介绍`JFileChooser`的使用...
JFileChooser下载文件到本地,可选择文件保存路径,可以上传文件,保存文件chooser.showSaveDialog()函数,打开文件chooser.showOpenDialog()函数
在Java Swing中,`JFileChooser`是用于实现文件选择对话框的关键类,它允许用户从本地文件系统中打开或保存文件。这个小例子是关于如何使用`JFileChooser`创建一个简单的文件选择功能。 在Java Swing应用中,`...
在Java编程环境中,`JFileChooser`是Swing库中的一个关键组件,用于实现文件选择对话框。它允许用户在本地文件系统中浏览并选择文件或目录,广泛应用于需要用户交互选取文件的应用场景。本文将深入探讨`JFileChooser...
从Java 6开始,`JFileChooser`支持多文件选择。只需调用`setMultiSelectionEnabled(true)`,用户就可以同时选择多个文件。 通过以上介绍,初学者可以快速掌握Java Swing中的文件对话框使用。实践是检验真理的唯一...
在Java中,我们通常使用`JFileChooser`类来实现文件打开和保存的功能。 首先,让我们详细了解`JFileChooser`类。它是Java AWT和Swing库的一部分,位于`javax.swing`包中。`JFileChooser`提供了两种主要操作:打开...
JFileChooser 是 Java 中一个用于选择文件的组件,可以用来实现文件保存功能。以下代码演示了如何使用 JFileChooser 实现文件保存功能: ```java JFileChooser jFileChooser = new JFileChooser(); jFileChooser....
本教程将深入讲解如何使用Java来实现这一功能,主要涉及`javax.swing.JFileChooser`类的使用。 `JFileChooser`是Java Swing库中的一个组件,用于展示文件选择对话框。它提供了丰富的功能,包括浏览文件、预览文件、...
`JFileChooser`是Java Swing库中的一个组件,用于显示一个对话框,让用户浏览和选择文件。通过这个类,我们可以创建一个图形用户界面,让用户进行文件选择操作。例如: ```java JFileChooser fileChooser = new ...
在Java中,我们可以使用JFileChooser类来实现这个功能,它是Java Swing库的一部分。 1. **JFileChooser类**: JFileChooser是Java Swing中的一个核心组件,它提供了一个用户界面,让用户可以选择文件或目录。...
此过程涉及多个Java核心库,包括`java.io.File`、`java.util.List`、`java.io.FileWriter`和`javax.swing.JFileChooser`等。 #### 二、关键技术与步骤 ##### 1. 文件选择与读取 - **使用`JFileChooser`选择文件或...
1. **JFileChooser类**: `JFileChooser` 是Java Swing库中的一个组件,它为用户提供了一个图形用户界面(GUI),以便在操作系统中打开、保存或选择文件。通过创建 `JFileChooser` 对象,我们可以设置各种选项,如...
首先,`JFileChooser`是Java Swing提供的重要组件,它允许用户选择文件或目录。通过创建`JFileChooser`对象,我们可以设置对话框的初始目录,限制用户只能选择文件或目录,甚至可以设置文件过滤器来只显示特定类型的...
在Java中,我们可以利用`JFileChooser`类来创建这样的文件选择器,它是Java Swing库的一部分,提供了图形用户界面(GUI)的文件选择对话框。 在Java中使用`JFileChooser`的基本步骤如下: 1. **导入所需的库**:...
为了实现这一功能,我们可以利用Java的`JFileChooser`类,它提供了用于打开和保存文件的对话框。本文将深入探讨如何使用`JFileChooser`来指定文件对话框中的后缀过滤器,从而限制用户只能选择特定类型文件。 首先,...