利用Java进行Excel数据导入导出.pptx
文本预览下载声明
1. 引言
MS 的电子表格(Excel)是Office 的重要成员,是保存统计数据的一种常用格式。在一
个Java 应用中,将一部分数;据生成Excel 格式,是与其他系统无缝连接的重要手段。在远程
网络教学系统中,利用Excel 表格统计学生的作业考试情况信息,便于老师了;解学生的学习
情况,分析教学效果,制定教学计划。所以,用Java 操作Excel 表格,导出相关的信息对于
远程网络教育系统有着的很重要;的意义。
在开源世界中,有两套比较有影响的API 提供Excel 数据导入导出的功能,一个是POI,
一个是jExcelAPI。本文结合;基于J2EE 开发的多媒体教学系统中提供的将学生作业信息导出
到Excel 表格中的实例,详细阐述了利用JAVA 开发的jExcelAPI;操作excel 的方法。
2. Jxl 简介
2.1 Java 语言简介
Java 语言具有面向对象、与平台无关、安全、稳定和多线程;等优良特性,是目前软件设
计中极为强大的编程语言[1]。它具有以下一些特点[2]:简单,面向对象,分布式,解释执行,
鲁棒,安全,体系结;构中立,可移植,高性能,多线程以及动态性。
2.2 什么是Jxl
Java Excel 是一开放源码项目,通过它Java 开发人员可以读;取Excel 文件的内容、创建
新的Excel 文件、更新已经存在的Excel 文件。使用该 API 非Windows 操作系统也可以通;过纯Java 应用来处理Excel 数据表。因为是使用Java 编写的,所以我们在Web 应用中可以
通过JSP、 Servlet 来调;用API 实现对Excel 数据表的访问。
Jxl 发布的稳定版本是V2.0,提供以下功能:
从 Excel 95、97、2000 等格;式的文件中读取数据[3];
读取 Excel 公式(可以读取Excel 97 以后的公式)[3];生成Excel 数据表(格式为Excel;97)[3];
支持字体、数字、日期的格式化[3];
支持单元格的阴影操作,以及颜色操作[3];
修改已经存在的数据表。
2.3;代码举例
2.3.1 从Excel 文件读取数据表
Java Excel API 既可以从本地文件系统的一个文件(.xls),也可以从输;入流中读取Excel
数据表。读取Excel 数据表的第一步是创建Workbook(术语:工作薄),相关文献中给出了
部分事例介绍[4];,下面的代码片段举例说明了应该如何操作:
import java.io.*;
import jxl.*;
… … … …
try;{
//构建Workbook 对象, 只读Workbook 对象
//直接从本地文件创建Workbook
//从输入流创建Workbo;ok
InputStream is=new FileInputStream(sourcefile);
jxl.Workbook rwb=;Workbook.getWorkbook(is);
}
catch (Exception e)
{e.printStackTrace(;);}
一旦创建了 Workbook,我们就可以通过它来访问Excel Sheet(术语:工作表)。代码如
下:
//获取第一张She;et 表
Sheet rs=rwb.getSheet(0);
我们既可能通过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);
St;ring strc11=c11.getContents();
如果仅仅是取得Cell 的值,我们可以方便地通过getContents()方;法,它可以将任何类型
的Cell 值都作为一个字符串返回。示例代码中 Cell(0, 0)是文本型,Cell(1, 0)是数字型,
Ce;ll(1,1)是日期型,通过getContents(),三种类型的返回值都是字符型。
当完成对 Excel 电子表格数据的处理后,一定要使;用close()方法来关闭先前创建的对象,
以释放读取数据表的过程中所占用的内存空间,在读取大量数据时显得尤为重要。
//操作完成时,关;闭对象,释放占用的内
显示全部