文档章节

介绍几种方法将Excel格式的文件导入到JTable中

fralepg
 fralepg
发布于 2009/02/21 14:35
字数 355
阅读 523
收藏 0

How to import Excel file into JTable

Here are three way to do this.

  1. Use "JTableReadTableModelTask " to do this. ( recommended )
  2. Use "ReadTableModelTask" to do this
  3. Use ModelIO to do this.
The first and second the way will run in the background thread, the third way will run in current thread.

1. Use "JTableReadTableModelTask "to do this. (recommended)

Here is the sample code to import excel file:

JTable jTable = new JTable();
String excelFileName = "excelFileName.xls";
File file = new File(excelFileName );   //‘file’ is the file you want to load.
JProgressBar progressBar = new JProgressBar(); //‘progressBar’ will show how much data it have loaded.
JTableReadTableModelTask task = new JTableReadTableModelTask(file, null, progressBar, jTable);
task.execute();

2.Use "ReadTableModelTask"to do this.

Use ReadTableModelTask, you must inherit it first, and override its method done(),in the done method, you can use following statement to get a TableModel,  this is not convenient, so we recommend the first way to do this:
       Object o = get();
       if(o instanceof TableModel) {
TableModel model = (TableModel)get(); 
}

3.Use ModelIO to do this.

Here is the sample code, also you could put the following code into a background thread, For example: use javax.swing.SwingWorker.
Map m = new HashMap();
// you could set progressBar in the map,for example: m.put(ModelIO.PROGRESS_BAR, progressBar);
WorkBook book = ModelIO.readWorkBook(openUrl, format, m);
TableModel tableModel;
if(book.getSelectedSheet() != null) {
    tableModel = book.getSelectedSheet().getModel();
} else if(book.getSheetCount() > 0) {
    tableModel = book.getSheet(0).getModel();
}

 

奇新Java控件——Java控件提供商和Java RIA, Web, J2ME解决方案开发商

JComponentPack是基于Swing框架的Java GUI控件集合,它包括JDataGrid电子表格版本JDataGrid数据库版本JComponentSet--Java swing控件集


了解更多产品。。。
 



--------------------------
新闻: 微软称已与国内主流网站合作测试IE8兼容性
导航: 博客园首页   知识库   新闻   招聘   社区   小组   博问   网摘   找找看

本文转载自:http://www.cnblogs.com/fralepg/archive/2009/02/14/1390586.html

fralepg
粉丝 2
博文 12
码字总数 1821
作品 0
郑州
私信 提问
swing如何获取容器中组件的实例

问题是这样的 有一个JTabbedPane里面加了很多个标签,每个标签里面是一个JTable 现在有一个事件会触发 刷新所有也签中的JTable的数据。 请问有什么方法可以遍历这个JTabbedPane中所有的JTabl...

zzbutcher
2014/06/23
791
0
JTable打印的问题

定义了一个自己设计的JTable,利用渲染器让它使一些特殊的行显示不同的颜色用来鲜明的标注。然后因为需要将这个table打印出来,利用API自带的print方法我试了下只能打印黑白的tiff格式图片,...

Loblood
2011/10/12
1K
0
在JTable中,点击表头实现排序?

private JTable table=new JTable(); // 存放DefaultTableModel private DefaultTableModel tableModel=new DeafaultTableModel() // 存放数据 TableRowSorter tableRowSorter=new TableRow......

wangaowell
2013/09/13
2.9K
2
Java Swing控件样式设置

1.设置JTable的背景色 一般情况下,设置JTable背景色的时候,只能设置有数据行的背景色,对于默认的底色部分还是没法设置,默认为灰色,这时需要设置JTable上层容器jScrollPane1的背景色才能...

YuanyuanL
2014/08/01
1K
0
用JTree子节点触发添加一个JTabbedPane选项卡

用AWT/Swing写了一个签到系统,遇到一个问题百思不得其解啊- - 编写的服务端界面分为三块,左上为一个JTree的面板,左下是一个JTable的面板,右边是一个JEditorPane用来显示客户端和服务端操...

Loblood
2011/09/19
1K
1

没有更多内容

加载失败,请刷新页面

加载更多

nginx学习笔记

中间件位于客户机/ 服务器的操作系统之上,管理计算机资源和网络通讯。 是连接两个独立应用程序或独立系统的软件。 web请求通过中间件可以直接调用操作系统,也可以经过中间件把请求分发到多...

码农实战
今天
5
0
Spring Security 实战干货:玩转自定义登录

1. 前言 前面的关于 Spring Security 相关的文章只是一个预热。为了接下来更好的实战,如果你错过了请从 Spring Security 实战系列 开始。安全访问的第一步就是认证(Authentication),认证...

码农小胖哥
今天
9
0
JAVA 实现雪花算法生成唯一订单号工具类

import lombok.SneakyThrows;import lombok.extern.slf4j.Slf4j;import java.util.Calendar;/** * Default distributed primary key generator. * * <p> * Use snowflake......

huangkejie
昨天
12
0
PhotoShop 色调:RGB/CMYK 颜色模式

一·、 RGB : 三原色:红绿蓝 1.通道:通道中的红绿蓝通道分别对应的是红绿蓝三种原色(RGB)的显示范围 1.差值模式能模拟三种原色叠加之后的效果 2.添加-颜色曲线:调整图像RGB颜色----R色增强...

东方墨天
昨天
11
1
将博客搬至CSDN

将博客搬至CSDN

算法与编程之美
昨天
13
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部