- 浏览: 217031 次
- 性别:
- 来自: 广州
文章分类
最新评论
-
chen569844962:
博主,你好,这个代码貌似不太完整,不知道能不能共享一下带我给我 ...
JTable 导出 Excel 利用 jxl.jar -
z995204127:
我去,发多了,太激动
【原创】swing 按钮点击 调用swt窗口(SWT浏览器)browser -
z995204127:
楼主,我去,太尼玛给力了,我搞了一天没搞定,原来要用一个线程包 ...
【原创】swing 按钮点击 调用swt窗口(SWT浏览器)browser -
z995204127:
楼主,我去,太尼玛给力了,我搞了一天,原来要用一个线程包装下。 ...
【原创】swing 按钮点击 调用swt窗口(SWT浏览器)browser -
changhuzhao:
好用!
org/eclipse/ui/internal/util/SWTResourceUtil
/* * 注明出处!! *QQ: 409323911 */ package com.db.report; import java.io.File; import java.io.FileNotFoundException; import java.util.logging.Level; import java.util.logging.Logger; import javax.swing.JOptionPane; import javax.swing.JTable; import jxl.Workbook; import jxl.format.Alignment; import jxl.format.Colour; import jxl.format.UnderlineStyle; import jxl.format.VerticalAlignment; import jxl.write.Label; import jxl.write.WritableCellFormat; import jxl.write.WritableFont; import jxl.write.WritableSheet; import jxl.write.WritableWorkbook; import jxl.write.WriteException; import jxl.write.biff.RowsExceededException; /** * * @author Administrator */ public class ExportTableToExcel { public ExportTableToExcel(File file, String heading,String inscribe,JTable table,String[] columnName) { try { WritableWorkbook workbook = null;// 创建工作薄 if (file.exists()) {// 文件已经存在 workbook = Workbook.createWorkbook(file, Workbook.getWorkbook(file)); } else {// 文件还不存在 workbook = Workbook.createWorkbook(file); } WritableSheet sheet = workbook.createSheet( heading, workbook.getNumberOfSheets());// 创建工作表 //取得TABLE的行数 int rowNum = table.getRowCount(); //取得TABLE的列数 int columnNum = table.getColumnCount(); int mergeNumberOfColumns =columnNum;// 获取表格列数 fillHeading(sheet, heading, mergeNumberOfColumns);// 填写主标题 fillInscribe(sheet, inscribe, mergeNumberOfColumns,rowNum);// 填写落款 // fillSubheading(sheet, subheading, mergeNumberOfColumns);// 填写副标题 // fillColumnName(sheet);// 填写列名 // fillCell(sheet);// 填写数据 for (int k = 0; k < columnNum; k++) { jxl.write.Label labelN = new jxl.write.Label(k, 2,columnName[k]); try { sheet.addCell(labelN); } catch (RowsExceededException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (WriteException e) { // TODO Auto-generated catch block e.printStackTrace(); } } for (int i = 0; i < columnNum; i++) {//列 for (int j = 1; j <= rowNum; j++) {// String str = null; str =table.getValueAt(j-1, i).toString(); jxl.write.Label labelN = new jxl.write.Label(i, j, str); try { sheet.addCell(labelN); } catch (RowsExceededException e) { e.printStackTrace(); } catch (WriteException e) { e.printStackTrace(); } } } //写入工作表 workbook.write(); try { workbook.close(); int dialog = JOptionPane.showConfirmDialog(null, "飞行小时统计表导出成功!是否打开?", "温馨提示", JOptionPane.YES_NO_OPTION); if (dialog == JOptionPane.YES_OPTION) { // Runtime run = Runtime.getRuntime(); // // I make the assumption that the client has Excel and // // the file type .XLS is associated with Excel // // This is a simple check to find out the 操作系统! // String lcOSName = System.getProperty("os.name").toLowerCase(); // boolean MAC_OS_X = lcOSName.startsWith("mac os x"); // if (MAC_OS_X) { // run.exec("open " + file); // } else { // run.exec("cmd /c start \"\" \"" + file + "\""); // } Runtime.getRuntime().exec("cmd /c start \"\" \"" + file + "\""); } } catch (WriteException e) { e.printStackTrace(); } } catch (FileNotFoundException e) { JOptionPane.showMessageDialog(null, "导入数据前请关闭工作表"); } catch (Exception e) { Logger.getLogger(ExportTableToExcel.class.getName()).log(Level.SEVERE, null, e); JOptionPane.showMessageDialog(null, "没有进行筛选"); } } // 填写主标题 private void fillHeading(WritableSheet sheet, String heading, int mergeNumberOfColumns) throws WriteException { WritableFont font = new WritableFont(WritableFont.ARIAL, 14, WritableFont.BOLD, false, UnderlineStyle.NO_UNDERLINE, Colour.BLACK);// 定义字体 WritableCellFormat format = new WritableCellFormat(font);// 创建格式化对象 format.setAlignment(Alignment.CENTRE);// 水平居中显示 format.setVerticalAlignment(VerticalAlignment.CENTRE);// 垂直居中显示 sheet.mergeCells(0, 0, mergeNumberOfColumns - 1, 0);// 合并单元格 sheet.setRowView(0, 600);// 设置行高 sheet.addCell(new Label(0, 0, heading, format));// 填写工作表 } //填写落款 private void fillInscribe(WritableSheet sheet, String inscribe, int mergeNumberOfColumns, int rowNum) throws WriteException { WritableFont font = new WritableFont(WritableFont.ARIAL, 11, WritableFont.NO_BOLD, false, UnderlineStyle.NO_UNDERLINE, Colour.BLACK);// 定义字体 WritableCellFormat format = new WritableCellFormat(font);// 定义格式化对象 format.setAlignment(Alignment.LEFT);// 水平居中显示 sheet.mergeCells(0, rowNum+2, mergeNumberOfColumns - 1, rowNum+2);// 合并单元格 sheet.addCell(new Label(0,rowNum+2, inscribe, format));// 填写工作表 } //=====================================填写副标题===================================== // private void fillSubheading(WritableSheet sheet, String subheading, int mergeNumberOfColumns) // throws WriteException { // WritableFont font = new WritableFont(WritableFont.ARIAL, 14, WritableFont.NO_BOLD, // false, UnderlineStyle.NO_UNDERLINE, Colour.RED);// 定义字体 // // WritableCellFormat format = new WritableCellFormat(font);// 定义格式化对象 // // format.setAlignment(Alignment.CENTRE);// 水平居中显示 // // format.setVerticalAlignment(VerticalAlignment.CENTRE);// 垂直居中显示 // // // sheet.mergeCells(0, 1, mergeNumberOfColumns - 1, 1);// 合并单元格 // // sheet.setRowView(1, 400);// 设置行高 // // sheet.addCell(new Label(0, 1, subheading, format));// 填写工作表 // // } //=====================================填写列名===================================== // private void fillColumnName(WritableSheet sheet) throws WriteException { // WritableFont font = new WritableFont(WritableFont.ARIAL, 12, WritableFont.BOLD, // false, UnderlineStyle.NO_UNDERLINE, Colour.RED);// 定义字体 // // WritableCellFormat format = new WritableCellFormat(font);// 定义格式化对象 // // format.setAlignment(Alignment.CENTRE);// 水平居中显示 // // sheet.setColumnView(0, 15);// 设置列宽 // // //填写工作表 // for (int column = 0; column < columnName.size(); column++) { // sheet.addCell(new Label(column, 3, columnName.get(column), format)); // } // } // // //填写数据 // private void fillCell(WritableSheet sheet) throws WriteException { // WritableFont font = new WritableFont(WritableFont.ARIAL, 12, WritableFont.NO_BOLD, // false, UnderlineStyle.NO_UNDERLINE, Colour.BLACK);// 定义字体 // // WritableCellFormat format = new WritableCellFormat(font);// 定义格式化对象 // // format.setAlignment(Alignment.CENTRE);// 水平居中显示 // // //填写工作表 // for (int row = 0; row < tableData.size(); row++) { // Vector rowData = tableData.get(row); // for (int column = 0; column < rowData.size(); column++) { // sheet.addCell(new Label(column, row + 4, rowData.get(column).toString(), format)); // } // } // } }
调用上面导出excel类:
button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { File selectedFile = getSelectedFile(".xls"); if (selectedFile != null) { String[] columnName = { "编号", " 学号", "姓名", "班级", "性别", "生日", "身份证", "年龄", "学历", "专业", "联系方式", "就业城市", "学生状态", "备注" }; String today = new SimpleDateFormat("yyyy年MM月dd日") .format(new Date()); String inscribe = "填表人: 填表日期:" + today; // 页脚 new ExportTableToExcel(selectedFile, fileName, inscribe, table, columnName); } } });
private File getSelectedFile(final String type) { String name = fileName; JFileChooser pathChooser = new JFileChooser(); pathChooser.setFileFilter(new FileFilter() { @Override public boolean accept(File f) { if (f.isDirectory()) { return true; } else { if (f.getName().toLowerCase().endsWith(type)) { return true; } else { return false; } } } @Override public String getDescription() { return "文件格式(" + type + ")"; } }); pathChooser.setSelectedFile(new File(name + type)); int showSaveDialog = pathChooser.showSaveDialog(this); if (showSaveDialog == JFileChooser.APPROVE_OPTION) { return pathChooser.getSelectedFile(); } else { return null; } }
发表评论
-
ubuntu jdk
2013-07-17 14:14 1459This is only a preview; cha ... -
Ubuntu 中安装 Eclipse
2013-07-17 13:44 1155b.Then righ-click t ... -
java sdk eclipse ubuntu
2013-06-28 23:50 923sudo rm /var/lib/dpkg/info/or ... -
ubuntu eclipse
2012-11-05 09:33 916ubuntu 12.04 eclipse 安装 ... -
ubuntu jdk java
2012-11-05 09:12 947第一步,下载jdk-7u4-linux-i586.tar ... -
jogl 拒绝访问Exception in thread "AWT-EventQueue-0" java.lang.UnsatisfiedLinkError:
2012-08-29 11:15 1514Exception in thread "AWT-E ... -
rxtx
2012-07-14 11:39 0Using RXTX From Rxtx T ... -
hibernate mysql 远程连接问题 字符编码
2011-04-07 20:47 1403报错:Illegal mix of collations (l ... -
hibernate search 初始笑话
2011-01-16 11:18 1189安装官方的说明配置hibernate search , 才是 ... -
Hibernate access HQL 日期时间 Date 与oracle时的区别
2011-01-10 21:51 1547由oracle转access后,发现查询某段时间时报错,折腾了 ... -
Java Hibernate access
2011-01-09 20:26 1358现在想把开发完成的程序,弄个简化版,以前是Java Hiber ... -
程序中调用cmd命令时,参数带有空格的解决方法
2010-08-09 20:31 9048比如在程序中调用cmd命令打开一个文件,而文件路径带有 ... -
java 打包(fatjar)发布,制作安装文件(inno setup)
2010-08-09 18:27 2099使用fatjar 打包,新建空文件夹META-INF, 新建 ... -
Java:log4j与 log4j.properties的配置说明
2010-07-29 21:10 1030Java:log4j与log4j.properties的配置说 ... -
使用Fat Jar打包后 Uncaught error fetching image:
2010-07-29 19:55 2479一个错误困扰了好多天了, 在Eclipse里运行没有问题,使 ... -
Eclipse 工程复制粘贴后中文乱码问题
2010-06-04 22:53 1271今天遇到一个奇怪的问题,我想把eclipse工程复制一份然后备 ... -
jTextField的字符长度设为固定长度,超长不能输入 和 只能输入数字
2010-03-16 11:09 7935----------------------------- ... -
【原创】swing 按钮点击 调用swt窗口(SWT浏览器)browser
2010-03-11 14:00 3719网上搜索swing 和swt 都是关于两者的区 ... -
将swt窗口居中(屏幕中间)将swing窗口居中
2010-03-11 13:51 2890将swt窗口居中 Dimension dem=T ... -
java swt browser
2010-03-10 16:29 4763package cmsdb.common.tool; i ...
相关推荐
本资源"JTable数据导出到Excel.rar"提供了一个实现将`JTable`中的数据导出到Microsoft Excel文件的方法。下面我们将详细探讨`JTable`与Excel数据交换的相关知识点。 1. **JTable基本概念** `JTable`是Java Swing中...
JTable 和 Excel 图表是常被用在网格或表格中显示数据。通常,用户希望输入到 JTable 的数据已经存在于 Excel 电子表格中。Excel 格式使用在非 Excel 软件中来实现导入-导出功能。因为如此,Java 软件也应该提供通用...
### jtable 导出excel 超过65535 新建一个sheet代码 在进行数据处理时,经常会遇到需要将大量数据从Java应用程序中的`JTable`导出到Excel文件的需求。然而,在实际操作过程中,我们可能会遇到一个问题:当数据量...
在Java编程环境中,`JTable`是Swing库中用于展示二维表格数据的组件,而将`JTable`中的数据导出到Excel是一种常见的需求,特别是在数据处理和报告生成的场景下。本教程将深入讲解如何实现这个功能,并提供一个名为`...
通过使用`jai-imageio`,开发者可以轻松地在Java程序中实现对这些格式的高效读写,同时利用其强大的图像处理能力。 例如,你可以用`jai-imageio`来实现以下功能: 1. 读取和写入不同格式的图像文件。 2. 动态调整...
java swing 导出Jtable里面的数据到excel,不用拷贝代码,直接粘贴代码
例如,JFrame、JButton、JTable等Swing组件的类都封装在这个jar文件中。虽然在现代的Java开发中,许多开发者更倾向于使用JavaFX替代Swing,但dt.jar对于那些仍然使用Swing的项目来说仍然是必要的。 除了以上三个jar...
它的组件如`JTable`和`JTree`等可以用来展示和编辑识别出的文本,提供更丰富的交互体验。 3. **集成Tesseract OCR**: 要在Java项目中使用Tesseract OCR,首先需要将其Java绑定库(如`tess4j`)引入到项目中,然后...
根据提供的文件信息,我们可以总结出以下关键知识点,主要聚焦于如何使用Java编程语言结合Apache POI库实现将JTable中的内容导出至Excel文件的功能。 ### 关键知识点 #### 1. JTable简介 - **定义**:`JTable`是...
总结来说,"jxl驱动包,从JTable中到处数据到excel JAVA"是一个实用的工具,可以帮助开发者轻松地将Java应用中的数据导出为Excel格式,提高数据管理的便捷性和效率。配合提供的示例,开发者可以快速上手,实现自己的...
JTable 是java窗体应用,关于布局,JTable的方法和一些其他的运用
标题中的"jai-imageio和swingx.jar.zip"是一个包含两个关键Java库的压缩文件,它们分别是jai-imageio-1.1.jar和swingx-1.6.1.jar。这两个库在Java开发中用于图形处理和用户界面设计,特别适用于需要高级图像操作和...
是一个jTable例子的例子 可以让新手当范例使
本教程详细介绍了如何使用Java和jxl库将JTable中的数据输出到Excel文件中。通过这个示例,我们可以看到创建Excel文件的基本步骤,包括创建工作簿、工作表、设置各种单元格格式等。这对于需要将Java应用程序中的数据...
Java SE程序 把Jtable中的数据导出到Excel中Java SE程序 把Jtable中的数据导出到Excel中Java SE程序 把Jtable中的数据导出到Excel中Java SE程序 把Jtable中的数据导出到Excel中Java SE程序 把Jtable中的数据导出到...
对于与Excel的交互,我们可以利用Apache POI库,这是一个强大的API,用于读取、写入和修改Microsoft Office格式的文件,包括Excel。以下是步骤: 1. 创建一个`HSSFWorkbook`对象来表示一个新的Excel工作簿。 2. ...
在SwingX 1.6.5-1这个版本中,主要的jar文件是"swingx-core-1.6.5-1.jar",这个文件包含了SwingX的所有核心类和方法,供开发者在项目中直接引用。通过引入这个库,开发者可以享受到以下主要功能和组件: 1. **...
在实际应用中,开发者可以利用SwingX提供的这些组件和功能来创建更丰富、更交互的用户界面,并结合其他工具进行图像处理和文字识别。由于标签中提到了"swingx1.0",这意味着你正在使用的是SwingX的第一个稳定版本,...
Java Swing 组件 JTable 应用详解 JTable 是 Java Swing 库中的一种高级组件,用于显示和编辑数据。它是 Java 编程中最常用的表格组件之一。下面是 JTable 应用的详细知识点: JTable 与 TableModel JTable 组件...
主要代码: DefaultTableModel model = (DefaultTableModel) table.getModel(); model.setColumnIdentifiers(new String[] {"标题一", "标题二", "标题三"});