import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.filechooser.*;
import java.io.File;
public class test extends JFrame {
private static final long serialVersionUID = 1L;
public static void main(String[] args) throws Exception {
new ConfigFrame("保存文件");
}
}
class ConfigFrame extends JFrame {
private static final long serialVersionUID = 1L;
public ConfigFrame(String title) {
//设置窗口属性
final int width = 300;
final int height = 200;
final Dimension screen = Toolkit.getDefaultToolkit().getScreenSize();
final int left = (screen.width - width) / 2;
final int top = (screen.height - height) / 2;
this.setLocation(left, top);
this.setSize(width, height);
this.setTitle(title);
//添加组件
JPanel panel = new JPanel();
this.add(panel);
JButton openBtn = new JButton("打开");
JButton saveBtn = new JButton("保存");
panel.add(openBtn);
panel.add(saveBtn);
final JFileChooser chooser = new JFileChooser("."); //在当前目录下,创建文件选择器
JpgFileFilter jpgFilter = new JpgFileFilter(); //jpg过滤器
GifFileFilter gifFilter = new GifFileFilter(); //gif过滤器
chooser.addChoosableFileFilter(jpgFilter); //加载jpg文件过滤器
chooser.addChoosableFileFilter(gifFilter); //加载gif文件过滤器
chooser.setFileFilter(jpgFilter); //设置默认的文件管理器。如果不设置,则最后添加的文件过滤器为默认过滤器
openBtn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
int returnVal = chooser.showOpenDialog(ConfigFrame.this); //显示窗口
if (returnVal == JFileChooser.APPROVE_OPTION) {
String filepath = chooser.getSelectedFile().getPath();
String filename = chooser.getSelectedFile().getName();
System.out.println("path:" + filepath);
System.out.println("name:" + filename);
}
}
});
saveBtn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
chooser.setSelectedFile(new File("picture.jpg")); //设置保存时的,默认文件名
int returnVal = chooser.showSaveDialog(ConfigFrame.this); //显示保存文件窗口
if (returnVal == JFileChooser.APPROVE_OPTION) {
String filepath = chooser.getSelectedFile().getPath();
String filename = chooser.getSelectedFile().getName();
}
}
});
this.setVisible(true);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
class JpgFileFilter extends FileFilter {
public String getDescription() {
return "*.jpg";
}
public boolean accept(File file) {
String name = file.getName();
return name.toLowerCase().endsWith(".jpg");
}
}
class GifFileFilter extends FileFilter {
public String getDescription() {
return "*.gif";
}
public boolean accept(File file) {
String name = file.getName();
return name.toLowerCase().endsWith(".gif");
}
}
分享到:
相关推荐
例如,设置文件过滤器(只显示特定类型的文件),或者设置默认的打开或保存目录。 在上述示例中,`MainForm`类的构造函数中,两个`JButton`按钮`buttonBrowseSource`和`buttonBrowseTarget`被用来触发`JFileChooser...
总之,这个项目涵盖了Java基础、Swing界面设计、网络编程和文件操作等多个知识点,是学习Java全面技术栈的一个好实践。通过实现这样一个TCP文件传输程序,开发者可以深入理解网络通信、用户界面交互以及数据处理的...
JFileChooser下载文件到本地,可选择文件保存路径,可以上传文件,保存文件chooser.showSaveDialog()函数,打开文件chooser.showOpenDialog()函数
如果我们想限制文件类型,我们可以使用 setFileFilter() 方法来设置文件类型过滤器。例如,我们可以使用以下代码: private String saveType[] = {"txt", "java"}; jFileChooser1.setFileFilter(new ...
JFileChooser是一个Java类,提供了一个文件对话框,用于选择文件或文件夹。它可以通过API打开一个模态对话框,或直接实例化并加入到其他组件。 直接使用JFileChooser打开对话框 JFileChooser可以直接通过API打开一...
Swing中使用JFileChooser选择文件目录
本项目标题“循环显示某文件下图片文件(jpg,jpeg,png,gif格式)”表明我们要实现一个功能,它能遍历指定目录,找到并加载.jpg、.jpeg、.png和.gif格式的图片文件进行展示。描述中的“JFileChooser绝对路径”提示...
`JFileChooser`提供了多种选择模式,包括选择文件、选择目录或同时选择文件和目录。在示例中,我们设置了只允许选择目录的模式: ```java chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); ``` ...
使用FileNameExtensionFilter类可以轻松地设置打开或保存文件对话框的文件类型选择,提高用户体验和文件管理的效率。 在上面的代码中,还使用了其他几个类,例如LookAndFeel、JButton、JLabel等。这些类都是Java的...
可以通过`setFileFilter()`方法设置文件类型过滤器,只显示特定类型的文件: ```java FileFilter filter = new FileNameExtensionFilter("文本文件", "txt"); fileChooser.setFileFilter(filter); ``` 2. 控制...
Java Swing组件文件选择器JFileChooser简单用法示例 Java Swing组件文件选择器JFileChooser是Java Swing中一个功能强大且灵活的文件选择器组件,可以用来选择文件或文件夹。下面我们将通过一个简单的示例来介绍...
选择路径保存文件,运用JFileChooser组件生成、
开发者不仅可以使用默认的文件选择行为,还可以通过编程来实现更为复杂的用户交互,例如自定义过滤器和文件视图。在使用时,只需导入javax.swing.filechooser包下的相关类,并根据需求创建和配置JFileChooser实例...
3. **过滤文件类型** 使用`setFileFilter()`方法可以限制用户只能看到特定类型的文件。例如,只显示.txt文件: ```java FileFilter filter = new FileNameExtensionFilter("Text Documents", "txt"); ...
- 分析提供的源码可以帮助理解如何结合Swing和MIME处理文件类型,通常会包含创建GUI,设置文件选择对话框,添加文件过滤器,处理选择事件以及根据MIME类型处理文件的逻辑。 通过学习和理解这个源码,开发者可以...
文件过滤器的应用场景广泛,比如在 Swing 库中,`JFileChooser` 类用于打开或保存文件对话框时,就可以设置`FileFilter`来限制用户选择的文件类型。又如,在服务器端,可能需要定期扫描文件夹,只处理某些类型的日志...
而`FileNameExtensionFilter`则用于设置文件选择对话框的文件类型过滤器。 现在,我们创建一个`JFileChooser`实例,并设置过滤器。例如,如果我们要让用户只选择.txt文件,可以这样做: ```java JFileChooser ...
Java Swing组件JFileChooser是Swing中经常用到的一个控件,主要用于文件选择和文件管理。下面将结合实例形式分析JFileChooser文件选择器的功能、使用方法及相关注意事项。 一、基本使用 JFileChooser文件选择器的...
例如,你可以设置默认目录、过滤文件类型,或者添加自定义的文件过滤器。下面是如何添加一个只显示.txt文件的过滤器: ```java JFileChooser fileChooser = new JFileChooser(); fileChooser.setFileSelectionMode...
在事件处理方法中,使用`JFileChooser`选择文件夹,获取用户输入的文件类型,过滤文件并更新表格内容。这样,用户可以选择一个目录,输入希望查看的文件类型,如".txt",对话框会显示该目录下所有.txt文件的信息,...