风为裳

导航

java中excelAPI的简介

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. 不能够读取图表信息;
  2. 可以读,但是不能生成公式,任何类型公式最后的计算值都可以读出;

Java Excel API 提供了许多访问 Excel 数据表的方法,在这里我只简要地介绍几个常用的方法,其它的方法请参考附录中的 Java Excel API Document。

Workbook 类提供的方法

1. int getNumberOfSheets() 获得工作薄(Workbook)中工作表(Sheet)的个数,示例:

 jxl.Workbook rwb = jxl.Workbook.getWorkbook(new File(sourcefile));
 int sheets = rwb.getNumberOfSheets();

2. Sheet[] getSheets() 返回工作薄(Workbook)中工作表(Sheet)对象数组,示例:

 jxl.Workbook rwb = jxl.Workbook.getWorkbook(new File(sourcefile));
 Sheet[] sheets = rwb.getSheets();

3. String getVersion() 返回正在使用的 API 的版本号,好像是没什么太大的作用。

 jxl.Workbook rwb = jxl.Workbook.getWorkbook(new File(sourcefile));
 String apiVersion = rwb.getVersion();

Sheet 接口提供的方法

1) String getName() 获取 Sheet 的名称,示例:

 jxl.Workbook rwb = jxl.Workbook.getWorkbook(new File(sourcefile));
 jxl.Sheet rs = rwb.getSheet(0);
 String sheetName = rs.getName();

2) int getColumns() 获取 Sheet 表中所包含的总列数,示例:

 jxl.Workbook rwb = jxl.Workbook.getWorkbook(new File(sourcefile));
 jxl.Sheet rs = rwb.getSheet(0);
 int rsColumns = rs.getColumns();

3) Cell[] getColumn(int column) 获取某一列的所有单元格,返回的是单元格对象数组,示例:

 jxl.Workbook rwb = jxl.Workbook.getWorkbook(new File(sourcefile));
 jxl.Sheet rs = rwb.getSheet(0);
 Cell[] cell = rs.getColumn(0);

4) int getRows() 获取 Sheet 表中所包含的总行数,示例:

 jxl.Workbook rwb = jxl.Workbook.getWorkbook(new File(sourcefile));
 jxl.Sheet rs = rwb.getSheet(0);
 int rsRows = rs.getRows();

5) Cell[] getRow(int row) 获取某一行的所有单元格,返回的是单元格对象数组,示例子:

 jxl.Workbook rwb = jxl.Workbook.getWorkbook(new File(sourcefile));
 jxl.Sheet rs = rwb.getSheet(0);
 Cell[] cell = rs.getRow(0);

6) Cell getCell(int column, int row)
获取指定单元格的对象引用,需要注意的是它的两个参数,第一个是列数,第二个是行数,这与通常的行、列组合有些不同。

 jxl.Workbook rwb = jxl.Workbook.getWorkbook(new File(sourcefile));
 jxl.Sheet rs = rwb.getSheet(0);
 Cell cell = rs.getCell(0, 0);
 

posted on 2012-01-18 11:54  风为裳  阅读(436)  评论(0编辑  收藏  举报