欢迎来到天天文库
浏览记录
ID:37538823
大小:223.16 KB
页数:8页
时间:2019-05-24
《java实现excel数据导入导出的研究与应用》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、http://www.paper.edu.cnJava实现Excel数据导入导出的研究与应用王晶晶北京邮电大学网络教育学院(100088)E-mail:bolalisi_double@126.com摘要:Excel能够通过功能强大的工具将杂乱的数据组织成有用的信息,然后分析、交流和共享所得到的结果。很多系统由于存在着大量需要处理的数据,Excel本身强大的功能使得它成为处理分析这些数据首选的工具。随着Java语言成为越来越多系统的开发语言,利用Java进行Excel的数据导入导出在很多系统中都发挥着重要的作用,本文主要介绍了JxlAPI的主要功能,并结合实例探讨了
2、利用JxlAPI操作Excel数据的导入和导出。关键字:Java;Excel;JxlAPI;数据导入导出中图分类号:TP312文献标识码:A1.引言MS的电子表格(Excel)是Office的重要成员,是保存统计数据的一种常用格式。在一个Java应用中,将一部分数据生成Excel格式,是与其他系统无缝连接的重要手段。在远程网络教学系统中,利用Excel表格统计学生的作业考试情况信息,便于老师了解学生的学习情况,分析教学效果,制定教学计划。所以,用Java操作Excel表格,导出相关的信息对于远程网络教育系统有着的很重要的意义。在开源世界中,有两套比较有影响的API
3、提供Excel数据导入导出的功能,一个是POI,一个是jExcelAPI。本文结合基于J2EE开发的多媒体教学系统中提供的将学生作业信息导出到Excel表格中的实例,详细阐述了利用JAVA开发的jExcelAPI操作excel的方法。2.Jxl简介2.1Java语言简介Java语言具有面向对象、与平台无关、安全、稳定和多线程等优良特性,是目前软件设[1][2]计中极为强大的编程语言。它具有以下一些特点:简单,面向对象,分布式,解释执行,鲁棒,安全,体系结构中立,可移植,高性能,多线程以及动态性。2.2什么是JxlJavaExcel是一开放源码项目,通过它Java开
4、发人员可以读取Excel文件的内容、创建新的Excel文件、更新已经存在的Excel文件。使用该API非Windows操作系统也可以通过纯Java应用来处理Excel数据表。因为是使用Java编写的,所以我们在Web应用中可以通过JSP、Servlet来调用API实现对Excel数据表的访问。Jxl发布的稳定版本是V2.0,提供以下功能:[3]从Excel95、97、2000等格式的文件中读取数据;[3]读取Excel公式(可以读取Excel97以后的公式);-1-http://www.paper.edu.cn[3]生成Excel数据表(格式为Excel97);[
5、3]支持字体、数字、日期的格式化;[3]支持单元格的阴影操作,以及颜色操作;修改已经存在的数据表。2.3代码举例2.3.1从Excel文件读取数据表JavaExcelAPI既可以从本地文件系统的一个文件(.xls),也可以从输入流中读取Excel数据表。读取Excel数据表的第一步是创建Workbook(术语:工作薄),相关文献中给出了[4],部分事例介绍下面的代码片段举例说明了应该如何操作:importjava.io.*;importjxl.*;…………try{//构建Workbook对象,只读Workbook对象//直接从本地文件创建Workbook//从输入
6、流创建WorkbookInputStreamis=newFileInputStream(sourcefile);jxl.Workbookrwb=Workbook.getWorkbook(is);}catch(Exceptione){e.printStackTrace();}一旦创建了Workbook,我们就可以通过它来访问ExcelSheet(术语:工作表)。代码如下://获取第一张Sheet表Sheetrs=rwb.getSheet(0);我们既可能通过Sheet的名称来访问它,也可以通过下标来访问它。如果通过下标来访问的话,要注意的一点是下标从0开始,就像数组
7、一样。一旦得到了Sheet,我们就可以通过它来访问ExcelCell(术语:单元格)。代码如下://获取第一行,第一列的值Cellc00=rs.getCell(0,0);Stringstrc00=c00.getContents();//获取第一行,第二列的值Cellc10=rs.getCell(1,0);Stringstrc10=c10.getContents();-2-http://www.paper.edu.cn//获取第二行,第二列的值Cellc11=rs.getCell(1,1);Stringstrc11=c11.getContents();如果仅仅是取得
8、Cell的
此文档下载收益归作者所有