参考:

http://k.pconline.com.cn/question/2210578.html

http://liuliang136.javaeye.com/blog/551524

最终代码:这个版本的代码是可以支持中文,需要导入jxl.jar包。

/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package Utils; /// // import import java.awt.event.*; import java.io.*; import javax.swing.*; import javax.swing.table.*; import jxl.*; import jxl.write.*; import jxl.write.biff.RowsExceededException; /** * * @author Administrator */ public class ExcelExporter { public ExcelExporter() { } public void exportTable(JTable table, File file) throws IOException { try { OutputStream out = new FileOutputStream(file); TableModel model = table.getModel(); WritableWorkbook wwb = Workbook.createWorkbook(out); // 创建字表,并写入数据 WritableSheet ws = wwb.createSheet("中文", 0); // 添加标题 for (int i = 0; i < model.getColumnCount(); i++) { jxl.write.Label labelN = new jxl.write.Label(i, 0, model.getColumnName(i)); try { ws.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 < model.getColumnCount(); i++) { for (int j = 1; j <= model.getRowCount(); j++) { jxl.write.Label labelN = new jxl.write.Label(i, j, model.getValueAt(j - 1, i).toString()); try { ws.addCell(labelN); } catch (RowsExceededException e) { e.printStackTrace(); } catch (WriteException e) { e.printStackTrace(); } } } wwb.write(); try { wwb.close(); } catch (WriteException e) { e.printStackTrace(); } } catch (FileNotFoundException e) { JOptionPane.showMessageDialog(null, "导入数据前请关闭工作表"); } } public static void main(String[] args) { String[][] data = { {"中文", "$1275.00"}, {"Pets", "$125.00"}, {"Electronics", "$2533.00"}, {"Mensware", "$497.00"} }; String[] headers = {"Department", "Daily Revenue"}; JFrame frame = new JFrame("JTable to Excel Hack"); DefaultTableModel model = new DefaultTableModel(data, headers); final JTable table = new JTable(model); JScrollPane scroll = new JScrollPane(table); JButton export = new JButton("Export"); export.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { try { ExcelExporter exp = new ExcelExporter(); exp.exportTable(table, new File("results.xls")); } catch (IOException ex) { System.out.println(ex.getMessage()); ex.printStackTrace(); } } }); frame.getContentPane().add("Center", scroll); frame.getContentPane().add("South", export); frame.pack(); frame.setVisible(true); } }

转载于:https://www.cnblogs.com/xuqiang/archive/2010/06/27/1953612.html

swing中如何将jtable中的数据导入到excel中?相关推荐

  1. 如何在ex表格导入php_怎么使用php把表格中的数据导入到excel中,php如何快速导入excel表格数据...

    php怎么导入大量数据的excel php导出数据的Excel: PHP从数据库分多次读取100万行记录,和分将100万入文本文件都没问题 Excel可以支100万行记录,Excel 2003最大支持 ...

  2. Excel - 将 TXT 数据导入到 Excel 中(自动将数据拆分成多列)

    txt文本: 将txt格式里的两列数据复制粘贴导入excel 后全都在同一列. 通过下述操作, 可以将 TXT 数据导入到 Excel 中,并且自动拆分为两列. 数据→从文本

  3. 怎么把html数据导入excel,将网页表格数据导入到Excel中的两种方法

    将网页表格数据导入到Excel中的第一种方法: 第一步,将包括所需表格的网页打开,并按CTRL+C把网址复制到剪贴板,以备下一步使用. 第二步,打开运行Excel软件,单击菜单栏中的"数据→ ...

  4. 将txt文本数据导入到Excel中

    1 txt文件如下,将txt中的数据导入到新建的Excel中(以office2016为例) 2 在Excel中选择数据.获取外部数据.自文本,选择要导入的文本 3 进入文本导入向导,共三步,根据自己的 ...

  5. DataGridView数据导入到Excel 中

    #region DataGridView数据显示到Excel /// <summary> /// 打开Excel并将DataGridView控件中数据导出到Excel /// </s ...

  6. 效率最高的Excel数据导入---(c#调用SSIS Package将数据库数据导入到Excel文件中【附源代码下载】)...

     本文目录: (一)背景 (二)数据库数据导入到Excel的方法比较    (三)SSIS的简介    (四)数据库中存储过程示例(SSIS应用需要) (五)Excel模板的制作(这步这么简单,稍微介 ...

  7. matlab将数据输出到excel中,matlab将数据保存为excel表格-怎样将MATLAB中的数据输出到excel中...

    怎样将MATLAB中的数据输出到excel中? xlswrite()函数可以将matlab中数据保存到excel中,请面例子: >> data = magic(5) % 示例数据 data ...

  8. mysql shell可视化_shell编程系列24--shell操作数据库实战之利用shell脚本将文本数据导入到mysql中...

    shell编程系列24--shell操作数据库实战之利用shell脚本将文本数据导入到mysql中 利用shell脚本将文本数据导入到mysql中 需求1:处理文本中的数据,将文本中的数据插入到mys ...

  9. oracle 导入电子表格,oracle数据导入到电子表格中

    oracle数据导入到excel中 实现步骤: 1.连入SQL*Plus 以system/manager用户登录, SQL> conn system/manager 创建新的用户:如user1/ ...

最新文章

  1. 文件名有规则情况读取
  2. 安装linux系统报softlock,soft lockup 解决思路
  3. 使用FileUpload控件上传前预览图片
  4. leetcode 349. Intersection of Two Arrays
  5. 百度ueditor编辑器动态获取项目根目录
  6. linux netbeans 中文乱码,浅谈Linux Netbeans字体反锯齿处理
  7. JAVA泛型--待续
  8. 女人,就是不适合做IT!
  9. default.html文件,default.html
  10. 84-java版spark2.x读取es6.x
  11. [Python] 绘制Python代码的函数调用关系:graphviz+pycallgraph
  12. arm 添加 samb 文件共享
  13. web基础、tomcat搭建
  14. 路由与交换技术(复习知识点-全)
  15. win10安装Tomcat10详细教程
  16. latex伪代码添加注释_【其他】如何用写代码的方式进行文字编辑 Markdown 的简明教程...
  17. linux php-fpm配置,php-fpm配置
  18. Flowable6.8(6.x版本通用)整合集成达梦8数据库(DM8)详解,解决自动生成表时dmn相关表语法报错问题。
  19. 目前计算机的发展处于第五代,计算机应用基础.pptx
  20. 计算机安全更新无法卸载,出现windows 系统补丁无法卸载该怎么解决?简单几步即可解决...

热门文章

  1. Linux mysql.plugin_Linux下MySQL安装
  2. 通过共现矩阵和余弦相似度实现机器对单词的认知、python实现
  3. php 正则提取日期,PHP正则匹配日期和时间(时间戳转换)的实例代码
  4. dz论坛连接mysql数据库_dz论坛搬家后连接数据库等教程
  5. C++ 判断元音/辅音
  6. C++ cout格式化输出
  7. Java多线程的使用
  8. pyqt5生成py的文件为什么是c 语言,如何使用PyQt5在python中创建文件对话框
  9. mybatis mysql 调用存储过程 多个返回值_图解MyBatis的SQL执行流程(干货)
  10. c6x Linux 内核中断分析