`
viwo
  • 浏览: 220204 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

用Jakarta POI操作Excel文件

    博客分类:
  • JAVA
阅读更多

Jakarta POI 是一套用于访问微软格式文档的Java API。

Jakarta POI有很多组件组成,其中有用于操作Excel格式文件的HSSF和用于早在Word的HWPF,在各种组件中目前只有用于操作Excel的HSSF相对成熟。它的官方首页是:http://jakarta.apache.org/poi/hssf/index.html,这里可以下载到它的最新版本和文档。

下面就来看看如何通过Jakarta POI的HSSF操作Excel文件。

操作Excel文件的步骤同JXL类似(关于如何用JXL操作Excel可以看我的另外两篇文章)。

HSSF对Excel的操作主要是通过下面几个对象实现:
HSSFWorkbook    工作簿对象对应于Excel文件
HSSFSheet       Sheet对象对应于Excel中的Sheet
HSSFRow         行对象表示Sheet中的一行(这个对象在JXL中并没有提供)
HSSFCell        单元格对象

操作步骤就是用HSSFWorkbook打开或者创建“Excel文件对象”,用HSSFWorkbook对象返回或者创建Sheet对象,用Sheet对象返回行对象,用行对象得到Cell对象,有了Cell对象就随你读写了。下面来看一个动态生成Excel文件的例子:

//创建HSSFWorkbook对象
HSSFWorkbook wb = new HSSFWorkbook();
//创建HSSFSheet对象
HSSFSheet sheet = wb.createSheet("sheet0");
//创建HSSFRow对象
HSSFRow row = sheet.createRow((short)0);
//创建HSSFCell对象
HSSFCell cell=row.createCell((short)0);
//用来处理中文问题
cell.setEncoding(HSSFCell.ENCODING_UTF_16);
//设置单元格的值
cell.setCellValue("单元格中的中文");
//定义你需要的输出流
OutputStream out = new FileOutputStream("viwo.xls");
//输出Excel
wb.write(out);
out.flush();

HSSF读取文件同样还是使用这几个对象,只是把相应的createXXX方法变成了getXXX方法即可。
只要理解了其中原理,不管是读还是写亦或是特定格式都可以轻松实现,正所谓知其然更要知其所以然。

最后附上HSSF官方的QuickGuide:《Busy Developers' Guide to HSSF Features》,虽然是英文的但还是很容易理解的。
http://jakarta.apache.org/poi/hssf/quick-guide.html

到此Java操作Excel文章系列就结束了,下一篇会介绍如何使用JFreeChart生成各种图。

 

分享到:
评论
3 楼 viwo 2007-07-03  
hdujyh 写道
有没有其他方法操作excel文件呢?

有,请看我的Java操作Excel系列前两篇
Java操作Excel之理解JXL--读取Excel
Java操作Excel之理解JXL--读取Excel模板动态写入数据并生成Excel


2 楼 hdujyh 2007-06-29  
有没有其他方法操作excel文件呢?
1 楼 xiaohua2125 2007-06-29  
关注,正在研究

相关推荐

    java的POI操作Excel文件

    我碰到的主要的问题就是对公式支持不是很好,很多带有公式的Excel文件用JXL打开后,公式就丢失了(比如now(),today()),在网上看到其他大虾评论说JXL写入公式也有问题,另外,JXL操作Excel文件的效率比POI低一点。...

    poi创建excel文档和读取excel文件实例(含java在myEclipse中的源码)

    内含源码和文档说明 示例1将演示如何利用jakarta poi api 创建excel 文档。 示例2将演示如何读取excel文档中的数据。假定在d盘jtest目录下有一个文件名为gongye.xls的excel文件。

    POI读写海量Excel(详细解读)

    至于Excel的写操作,对较高版本的Excel2007,POI提供了很好的支持,主要流程是第一步构建工作薄和电子表格对象,第二步在一个流中构建文本文件,第三步使用流中产生的数据替换模板中的电子表格。这种方式也可以处理...

    java开发Excel所需 poi jxl两种jar包

    poi是一个Java api组件,用于处理execel和doc文件 jxl可以读取,创建,更新Excel文件,使用该api非windows系统也可以通过纯java来处理Excel。

    poi解析 Excel例子

    Jakarta_POI 使用Java读写Excel文件,可以满足大部分的需要。 因为刚好有一个项目使用到了这个工具

    java中导入导出Excel文件

    Jakarta POI 是apache的子项目,目标是处理ole2对象。它提供了一组操纵Windows文档的Java API 目前比较成熟的是HSSF接口,处理MS Excel(97-2002)对象。它不象我们仅仅是用csv生成的没有格式的可以由Excel转换的...

    JAVA生成Excel文件

    Jakarta的POI项目提供了一组操纵Windows文档的Java API,如下几个类提供了操作Excel文件的方便的途径:HSSFWorkbook、HSSFSheet、HSSFRow、HSSFCell,分别代表了Excel电子表格中的Book、Sheet、行和单元格

    Java操作Excel

    Java操作Excel POI(Jakarta POI API), JXL(Java Excel API) 内容包括: 1.所需jar文件 2.个人整理关于POI与JXL的资料 3.示例的源代码

    Excel、Word文件上传下载jar包

    兼容97-03、07版本Excel、Word文件上传下载所需要的jar包。今天整理出来了,自己用着没问题就放上来了。jakarta-oro.jar、ooxml-schemas-1.1.jar、poi-3.5-beta6-20090622.jar、poi-3.5-FINAL-20090928.jar、poi-...

    Java处理Microsoft产品编程的API插件POI

    POI是apache免费的开源插件...通过HSSF可以用Java代码来读取、写入和修改Excel文件。 HSSF(Horrible Spreadsheet Format)是读写Microsoft Excel的API。 HDF(Horrible Document Format)是读写Microsoft Wor 97的API。

    poi-bin-3.1-FINAL-20080629

    java读取和写入excel文件, 最新完全版。

    JXLS:excel模板形式导出excel

    #####jXLS - 使用 XLS 模板将数据导出到 Excel 要使用 jXLS 引擎,您必须将 jxls-core jar 放在类路径中。 如果您打算使用 jXLS 读取 XLS 文件,则必须将 jxls-reader jar 文件添加到类路径中。 如果您使用 Maven...

Global site tag (gtag.js) - Google Analytics