鉴于windows操作系统及office办公平台,在个人桌面上的垄断地位,使得excel/word/ppt等文件被广泛应用。通过java读写excel文档是编程开发中常见问题,比如在swing和web应用中经常遇到。目前通过Java操作Excel的类库大致有[1]:
1、POI,大名鼎鼎的Apache上的项目。
2、Java Excel API(亦简称jexcelapi或jxl),纯java的excel开发包。
3、jexcel,jxl的衍生品,适宜于Swing开发。
4、jxls,依赖于POI,基于excel模板的可定制化报表输出工具。
5、Jacob (Java COM Bridge),顾名思义,是采用桥接方式访问COM组件及Win32类库。
6、其它方式,如数据导出到html格式的表格中,再另存为xls文档
使用比较
POI、jxl、jexcel可以划归为一类,通过java封装了Excel的操作,所以需要折腾Workbook,Sheet,Cell等对象,顾及excel的每个细节。这种方式,优点是功能强大。缺点是代码冗长拖沓,阅读困难。
jxls虽然是基于POI,但其最大突破在于预先定制好Excel模板(如字段、格式、图表等),运行期绑定数据即可呈现多样化报表。其优点是编程轻松,功能灵活方便。缺点是对于过于动态化报表不太适用(如输出字段、格式非常多变)。
Jacob和COM模型粘在一起,自然被纯java的拥趸者所不顾。所以,应用不是很广。
jxls初体验
业务部门经常需要我们技术部给推送一些定期报表,这些报表的字段及格式都是预定义好的。显而易见,在这种场合,jxls是再适合不过的工具了。只要定义好输出报表的模板,绑定查询出的数据即大功告成。日常维护起来也很方便,比如加减字段、改变展现方式、嵌入excel自动图表等都能轻松搞定。
百闻不如一见,从jxls主页[5]上下载了jXLS v.0.9.6(不知何故,自20080409日后没有再更新),安装起来运行其中自带的范例。自带范例可以通过maven来编译,偶试了试编译成功,但不知道怎么运行范例。后来没辙,把范例导到eclipse中进行编译运行。编译时下载了最新的poi-3.2-FINAL-20081019.jar,结果编译成功,但运行报错
java.lang.NoSuchMethodError: org.apache.poi.hssf.usermodel.HSSFCell.setEncoding(S)V
后来换成poi-3.1-FINAL-20080629.jar,又报别的错,最后好不容易从CSDN上下载了poi-3.0.1-FINAL- 200705.jar,总算运行成功。体验了一下,效果非常好。让人不解的是,在POI主站上只能下载到最新的POI3.2版本,老版本就是找不到。
参考资料
1、http://schmidt.devlib.org/java/libraries-excel.html ,java操作Excel的类库清单
2、http://jakarta.apache.org/poi/ ,POI主页
3、http://www.andykhan.com/jexcelapi/index.html ,jxl主页
4、http://www.teamdev.com/jexcel/index.jsf ,jexcel主页。
5、http://jxls.sourceforge.net/ ,jxls主页
6、http://jacob-project.wiki.sourceforge.net/ ,Jacob主页
分享到:
相关推荐
Java导出Excel是Java开发中常见的需求,尤其是在数据处理和报表生成方面。Apache POI库是Java领域中广泛使用的工具,它允许开发者读写Microsoft Office格式的文件,包括Excel(.xlsx和.xls)。本篇文章将深入讲解...
java导出excel超过65536条记录出错 java导出excel超过65536条记录出错 java导出excel超过65536条记录出错 java导出excel超过65536条记录出错
本资源提供的"java导出excel复合表头简单实例"是针对Java开发者的一个实用教程,特别是对于那些刚开始接触Java Excel导出功能的新手。这个实例将帮助你理解如何在Excel中创建并设置复杂的表头结构,使得数据的呈现...
本示例涉及的主题是“java导出excel复杂表头”,这意味着我们要处理的不是简单的单级表头,而是包含多级或者多层次结构的表头。在描述中提到这是一个可以直接运行的Java工程,但需要进一步改造为Web下载服务。 首先...
Java导出Excel是Java开发中常见的需求,尤其在数据分析、报表生成或数据交换场景中。本示例资源提供了一个RAR压缩包,包含了实现这一功能的源代码,主要讲解了两个核心部分:一是如何将数据写入Excel文件并保存在...
java导出Excel 时候 相同行合并(可合并多列); 已测试通过;
在Java编程中,导出Excel是一项常见的任务,特别是在数据分析、报表生成或数据交换等领域。而带图片的Excel导出则增加了复杂性,因为涉及到二进制数据的处理和Excel特定格式的支持。以下是一些关于如何在Java中实现...
Java导出Excel是Java开发中常见的一项任务,特别是在数据分析、报表生成或数据交换等领域。Apache POI是一个流行的开源库,允许Java程序读取和写入Microsoft Office格式的文件,包括Excel(.xls和.xlsx)。在本场景...
压缩包中的文件"java导出excel"很可能包含了使用这两种库的示例代码或教程资源,你可以通过解压并学习这些文件来深入理解如何在Java中实现数据到Excel的导出。记得在实际使用时,要根据项目需求选择合适的技术,并...
该工具类实现java导出树形结构的方法,并未采用excel分组功能实现,而是根据树节点显示层级设置excel样式。针对easyUi,treeGrid开发的导出excel功能。方法简便实用、性强、通俗易懂。项目中亲测,no problem。
"Java 导出Excel.zip"这个压缩包文件提供了一个Java实现的解决方案,允许开发者以全泛型的方式方便地导出数据到Excel文件,而且支持动态创建不同数量的sheet页面,增强了灵活性。 1. **Java与Excel交互**:Java中...
Java导出Excel在Web项目中的应用是一个常见的需求,特别是在企业级开发中,为了方便数据的存储、分析和传输,往往需要将数据库中的数据导出为Excel格式。下面将详细介绍这个主题,包括相关技术和实现步骤。 1. **...
java导出excel例子,使用的是poi,可以分sheet导出,可以导出txt
在压缩包中的"java导出Excel"文件可能是项目的源代码,包含了实现上述功能的具体Java类和方法。分析这些源码可以帮助我们更深入地理解如何在实际项目中应用这些知识点。 总结来说,这个项目展示了如何在Java环境中...
资源描述:一个使用java做的导出数据,并且可以在excel表生成折线图的工具类,使用简单操作方便。
### Java导出Excel知识点 #### 一、导出Excel的核心技术背景 在现代软件开发过程中,数据导出是一项常见的需求,尤其是将数据从数据库或内存中的数据结构导出到Excel文件,这为用户提供了便捷的数据查看与分析方式...
总之,Java导出Excel涉及到的主要知识点包括:Apache POI库的使用,Workbook、Sheet、Row和Cell对象的创建和操作,以及数据写入和文件输出。希望这个示例能帮助你理解并开始在自己的项目中实现Excel导出功能。
以下是一些关于“java导出excel”的核心知识点,以及如何实现这一功能的详细解释。 1. **Apache POI库**: Apache POI是一个流行的开源库,专门用于读写Microsoft Office格式的文件,包括Excel。使用POI,开发者...
* 导出excel(利用反射机制) * String[] title = {"订单号","商品名称","商品价格","创建时间"}; * String[] field = {"orderNum","productName","productPrice","createTime"}; * ExportTools.export("sellJoin...