没有合适的资源?快使用搜索试试~ 我知道了~
首页java使用JXL导入导出excel
资源详情
资源评论
资源推荐
JXL 操作 excel 文件的方法
最后的“进阶操作”确实很有用处,笔者感觉文档写到这里以后把以前很多不明白的东西搞清楚了,豁然开
朗啊。建议仔细看看“数据格式”、“方法字典”和“其他讲解”三章,含金量很高。
文中附带代码,可读性很高,具有代表性,可以直接拿来用,不过其中一些适配字段要自己填。
使用 Windows 操作系统的朋友对 Excel(电子表格)一定不会陌生,但是要使用 Java 语言来操纵 Excel 文
件并不是一件容易的事。在 Web 应用日益盛行的今天,通过 Web 来操作 Excel 文件的需求越来越强烈,目
前较为流行的操作是在 JSP 或 Servlet 中创建一个 CSV (comma separated values)文件,并将这个文件以
MIME,text/csv 类型返回给浏览器,接着浏览器调用 Excel 并且显示 CSV 文件。这样只是说可以访问到
Excel 文件,但是还不能真正的操纵 Excel 文件,本文将向大家介绍一个开放源码项目,Java Excel API,使
用它大家就可以方便地操纵 Excel 文件了。
Java Excel API 简介
Java Excel 是一开放源码项目,通过它 Java 开发人员可以读取 Excel 文件的内容、创建新的 Excel 文件、
更新已经存在的 Excel 文件。使用该 API 非 Windows 操作系统也可以通过纯 Java 应用来处理 Excel 数据表。
因为是使用 Java 编写的,所以我们在 Web 应用中可以通过 JSP、Servlet 来调用 API 实现对 Excel 数据表的
访问。
JXL!是一个韩国人写的 Java 操作 excel 的工具,!在开源世界中,有两套比较有影响的 API 可供使用,一
个是 POI,一个是 jExcelAPI。其中功能相对 POI 弱一点。但 jExcelAPI 对中文支持非常好,API 是纯 Java
的,Ú并不依赖 Windows 系统,即使运行在 Linux 下,它同样能够正确的处理 Excel 文件。Ú另外需要说明的
是,这套 API 对图形和图表的支持很有限,而且仅仅识别 PNG 格式。
中国的同志们加油了,啥时候咱也搞个通用的,适应 EXCEL 的不行,适应 WPS 的总行吧。
读写操作
JExcelApi 可以从文件或者输入流进行读取操作。
基本的步骤:
由文件或者输入流创建一个 workbook;
由 workbook 的 getSheet 方法创建一个 Sheet(2 种方法,下标和名字,下标从 0 开始);
由 Sheet 的 getCell (x ,y)方法得到某个 Cell,Cell 对象可以读取它的类型( getType )、内容
(getContents )等。
下面详细解说(入门级):
1,创建文件
拟生成一个名为“测试数据.xls”的 Excel 文件,其中第一个工作表被命名为“第一页”,大致效果如下
(CreateXLS.Java):
//生成 Excel 的类
import Java.io.*;
import JXL.*;
import JXL.write.*;
public class CreateXLS {
public static void main(String args[]) {
try {
// 打开文件
WritableWorkbook book = Workbook.createWorkbook(new File("测试.xls"));
// 生成名为“第一页”的工作表,参数 0 表示这是第一页
WritableSheet sheet = book.createSheet("第一页", 0);
// 在 Label 对象的构造子中指名单元格位置是第一列第一行(0,0)
// 以及单元格内容为 test
Label label = new Label(0, 0, "test");
// 将定义好的单元格添加到工作表中
sheet.addCell(label);
/*
* 生成一个保存数字的单元格 必须使用 Number 的完整包路径,否则有语法
歧义 单元格位置是第二列,第一行,值为 789.123
*/
JXL.write.Number number = new JXL.write.Number(1, 0, 789.123);
sheet.addCell(number);
// 写入数据并关闭文件
book.write();
book.close();
} catch (Exception e) {
System.out.println(e);
}
}
}
编译执行后,会在当前位置产生一个 Excel 文件。里面有一个叫“第一页”的 sheet,sheet 里第一列第一行、
第一列第二行均有值。
2,读取文件
以刚才我们创建的 Excel 文件为例,做一个简单的读取操作,程序代码如下:
//读取 Excel 的类
import Java.io.*;
import JXL.*;
public class ReadXLS {
public static void main(String args[]) {
try {
Workbook book = Workbook.getWorkbook(new File("测试.xls"));
// 获得第一个工作表对象
Sheet sheet = book.getSheet(0);
// 得到第一列第一行的单元格
Cell cell1 = sheet.getCell(0, 0);
String result = cell1.getContents();
System.out.println(result);
book.close();
} catch (Exception e) {
System.out.println(e);
}
}
}
程序执行结果:test!
如果仅仅是取得 Cell 的值,我们可以方便地通过 getContents()方法,它可以将任何类型的 Cell 值都作为一
个字符串返回。
如果有需要知道 Cell 内容的确切类型,API 也提供了一系列的方法。
null
double
null
if
if!"#$
!%&%!&%
&%'&
if
(
(
%)&**+*,&-*++*-*+
%)&**+*,&-*++*-*+
%)&* * + * ,& - * + + * - * +
在得到 Cell 对象后,通过 getType()方法可以获得该单元格的类型,然后与 API 提供的基本类型相匹配,强
制转换成相应的类型,最后调用相应的取 值方法 getXXX(),就可以得到确定类型的值。API 提供了以下基
本类型,与 Excel 的数据格式相对应。
3,修改文件
利用 jExcelAPI 可以修改已有的 Excel 文件,修改 Excel 文件的时候,除了打开文件的方式不同之外,其他
操作和创建 Excel 是一样的。下面的例子是在我们已经生成的 Excel 文件中添加一个工作表:
//修改 Excel 的类,添加一个工作表
import Java.io.*;
import JXL.*;
import JXL.write.*;
public class UpdateXLS {
public static void main(String args[]) {
try {
// Excel 获得文件
Workbook wb = Workbook.getWorkbook(new File("测试.xls"));
// 打开一个文件的副本,并且指定数据写回到原文件
WritableWorkbook book = Workbook.createWorkbook(new File("测试.xls"),
wb);
// 添加一个工作表
WritableSheet sheet = book.createSheet("第二页", 1);
sheet.addCell(new Label(0, 0, "第二页的测试数据"));
book.write();
book.close();
} catch (Exception e) {
剩余16页未读,继续阅读
FRIDAYNIGHTLIGHTS1
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- RTL8188FU-Linux-v5.7.4.2-36687.20200602.tar(20765).gz
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
- SPC统计方法基础知识.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0