全面挖掘Java Excel API 使用方法。(JExcelApi )
使用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 数据表的访问。
现在发布的稳定版本是V2.0,提供以下功能: 从Excel 95、97、2000等格式的文件中读取数据; 读取Excel 公式(可以读取Excel 97以后的公式); 生成Excel 数据表(格式为Excel 97); 支持字体、数字、日期的格式化; 支持单元格的阴影操作,以及颜色操作; 修改已经存在的数据表;
现在还不支持以下功能,但不久就会提供了: 不能够读取图表信息;
可以读,但是不能生成公式,任何类型公式最后的计算值都可以读出; 应用示例
1、从Excel 文件读取数据表
Java Excel API 既可以从本地文件系统的一个文件(.xls,也可以从输入流中读取Excel 数据表。读取Ex cel 数据表的第一步是创建Workbook(术语:工作薄 ,下面的代码片段举例说明了应该如何操作:(完整代码见ExcelReading.java
import java.io.*; import jxl.*; … … … … try {
//构建Workbook 对象, 只读Workbook 对象 //直接从本地文件创建Workbook //从输入流创建Workbook
InputStream is = new FileInputStream(sourcefile; jxl.Workbook rwb = Workbook.getWorkbook(is; }
catch (Exception e {
e.printStackTrace(; }
一旦创建了Workbook ,我们就可以通过它来访问Excel Sheet(术语:工作表 。参考下面的代码片段:
//获取第一张Sheet 表
我们既可能通过Sheet 的名称来访问它,也可以通过下标来访问它。如果通过下标来访问的话,要注意的一点是下标从0开始,就像数组一样。
一旦得到了Sheet ,我们就可以通过它来访问Excel Cell(术语:单元格 。参考下面的代码片段:
//获取第一行,第一列的值 Cell c00 = rs.getCell(0, 0; String strc00 = c00.getContents(; //获取第一行,第二列的值 Cell c10 = rs.getCell(1, 0; String strc10 = c10.getContents(; //获取第二行,第二列的值 Cell c11 = rs.getCell(1, 1; String strc11 = c11.getContents(;