今天同事开发了一些导入导出功能,我不经意间看到了选择器。感觉挺不错的,然后发了上来
package com.deppon.util;
import java.io.ByteArrayInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import javax.swing.JFileChooser;
import javax.swing.filechooser.FileFilter;
import com.sun.xml.internal.messaging.saaj.util.ByteInputStream;
public class ChooserTest {
/**
* @param args
*/
public static void main(String[] args) {
chooserSomething();
}
/**
* @desc 通过弹出的框框进行选择文件
* @author 张兴旺
* @date 2012-12-27
*/
public static void chooserSomething(){
JFileChooser chooser = new JFileChooser();
chooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
FileFilter fileFilter = new FileFilter() {
@Override
public boolean accept(File pathname) {
String name = pathname.getName().toLowerCase();
if (name.endsWith(".png") || name.endsWith(".jpg")
|| name.endsWith(".bmp") || name.endsWith(".gif")
|| pathname.isDirectory()) {
return true;
}
return false;
}
@Override
public String getDescription() {
return "图片文件";
}
};
chooser.addChoosableFileFilter(fileFilter);
int result = chooser.showOpenDialog(null);
if(result == JFileChooser.APPROVE_OPTION){
File selectedImage = chooser.getSelectedFile();
//以下可以作必要的动作,比如上传到数据库里面,则要有一个转换成Byte字节文件
System.out.println(selectedImage.getAbsolutePath());
System.out.println(getByteFromFile(selectedImage).length);
byte[] image = getByteFromFile(selectedImage);
Connection con = JdbcUtil.getConnection();
PreparedStatement psmt = null;
ByteArrayInputStream bins = null;
String sql = "insert into tbbyte(idtbbyte,byteimage) values(?,?)";
try {
bins = new ByteArrayInputStream(getByteFromFile(selectedImage));
psmt = con.prepareStatement(sql);
psmt.setInt(1, 1);
psmt.setBinaryStream(2, bins, image.length);
// if(!psmt.execute()){
// bins.close();
// psmt.close();
// }
psmt.execute();
bins.close();
psmt.close();
} catch (SQLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}finally{
JdbcUtil.closeConnection(con, psmt, null);
}
}
}
/**
* @desc 将文件转换成字节流,可以方便的存储到数据库中
* @author 张兴旺
* @date 2012-12-27
* @param file
* @return
*/
private static byte[] getByteFromFile(File file){
if(file != null){
int size = (int) file.length();
FileInputStream fs = null;
try {
fs = new FileInputStream(file);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
byte[] bts = null;
if(size>0){
bts = new byte[size];
try {
fs.read(bts);
} catch (IOException e) {
e.printStackTrace();
}
return bts;
}
}
return null;
}
}
分享到:
相关推荐
Java Swing组件文件选择器JFileChooser简单用法示例 ...JFileChooser是Java Swing中一个功能强大且灵活的文件选择器组件,我们可以通过它来选择文件或文件夹,并在实际开发中使用它来实现特定的功能。
总结来说,这个"Java Swing 文件选择器"的例子展示了如何利用`JFileChooser`组件在Java Swing应用中实现用户友好的文件选择功能。通过理解`JFileChooser`的工作原理和提供的各种配置选项,开发者可以轻松地集成文件...
Swing Datepicker时间选择器是一个在Java Swing库中用于处理日期选择的组件,它提供了用户友好的界面,允许用户在应用程序中方便地选取日期。在Java编程中,Swing库是一个丰富的图形用户界面(GUI)工具包,它是Java ...
NULL 博文链接:https://happyqing.iteye.com/blog/2063990
2. `.jar`文件:编译后的库文件,用于在项目中引入日期选择器。 3. 图片资源:可能包括按钮、日历图标等,用于美化控件。 4. CSS或类似的样式表:定义控件的外观和主题。 5. 本地化文件:如果支持多语言,可能会有...
通过使用Swing的组件,如`JFileChooser`,可以轻松实现文件选择,再配合`java.io`包的流处理类,实现文件的按字节合并。这种技术广泛应用于各种需要处理用户上传或下载文件的场景,为用户提供了一种直观且灵活的方式...
此外,还解释了如何通过自定义`FileFilter`来限制文件选择器中显示的文件类型,以及如何响应用户的文件选择操作。这些技术在许多桌面应用程序中都非常有用,特别是那些需要频繁处理文件的应用程序。
在压缩包的"swing 时间控件"中,可能包含了实现这些功能的示例代码、源文件或资源文件,可以帮助开发者快速理解和集成这些日期时间选择控件到自己的Swing应用中。通过研究这些文件,开发者可以学习如何自定义日期...
窗口内可能会有文件选择器组件(如JFileChooser)来让用户选择需要比较的文件,以及结果显示区域(如JTextArea或JTable)来展示比较结果。 文件比较通常涉及到读取文件内容,然后使用字符串比较算法,如逐行或逐...
在Java的Swing库中,开发用户界面时经常会用到文件选择、按钮控件和弹出窗口等功能。这些是构建图形用户界面(GUI)的基本组件,使得用户能够与应用程序进行交互。下面我们将深入探讨这些主题。 1. **文件选择**: ...
在Java编程中,文件选择器(FileChooser)是一个非常实用的工具,它允许用户从本地文件系统中选择文件或目录。这个“有用的例子啊JAVA文件选择器”提供的示例代码可以帮助我们更好地理解如何在Java应用程序中集成...
2. **设置当前目录**:通过调用`setCurrentDirectory()`方法,你可以指定文件选择器打开时显示的初始目录。如果不设置,默认会是用户的个人目录。 3. **文件过滤器**:`JFileChooser`支持文件过滤,可以通过`...
1. 文件选择器:Swing提供JFileChooser组件,允许用户选择本地文件或目录。用户可以通过点击文件选择对话框来浏览并选择要上传的文件。 2. 文件信息显示:在用户选择文件后,应用可能需要在界面上显示所选文件的...
在Java Swing中实现PDF阅读器是一项技术挑战,涉及到对PDF文件格式的理解、IO操作、Swing组件的使用以及可能的第三方库集成。 PDF(Portable Document Format)是一种广泛使用的文件格式,用于存储文档,包括文本...
### Java Swing 文件选择器知识点详解 #### 一、概述 Java Swing 提供了一种非常方便的方式来让用户选择文件或目录,这主要通过 `JFileChooser` 类实现。`JFileChooser` 是一个标准的文件对话框,可以用来打开或者...
在Java的Swing库中,`JTree`组件是一个强大的工具,用于展示层次结构的数据,如文件系统目录结构。这个组件允许用户以图形化的方式浏览和操作这些数据,包括展开、折叠节点,以及选择和编辑特定节点。在"Swing展示的...
在文件管理器中,可能会有多个JPanel,分别用于显示目录树、文件列表以及操作按钮等。 4. **JTree**: JTree组件用于展示层次结构数据,例如文件系统的目录结构。用户可以通过展开、折叠节点来浏览文件夹。 5. **...
Java文件选择器源代码是用于在Java应用程序中实现文件选择功能的代码片段或库。它通常包含一组类和方法,允许用户浏览并选择本地文件系统中的文件或目录,类似于操作系统提供的文件选择对话框。在Java中,我们可以...
文件选择器是用户界面中的一个常用组件,用于让用户选择文件或目录。在Java中,`JFileChooser`类提供了文件选择的基本功能,可以通过继承或组合的方式定制自己的文件选择器。 #### 二、核心类和方法 1. **`...
在这个"Swing文本编辑器"项目中,我们将会探讨如何使用Swing来开发一个基本的文本编辑器。 Swing文本编辑器的核心组件是`JTextArea`,这是一个可以显示和编辑多行文本的组件。我们可以使用`JScrollPane`来包裹`...