java poi word宏_全面了解POI操作Microsoft Office(Word、Excel、PowerPoint)

POI 与 Microsoft Office

1. POI 简介

POI 是 Apache 下的 Jakata 项目的一个子项目,主要用于提供 java 操作 Microsoft

Office 办公套件如 Excel,Word,Powerpoint 等文件的 API.

微软的Office 办公软件在企业的日常办公中占据着重要的地位,人们已经非常熟悉

Office 的使用。在我们开发的应用系统中,常常需要将数据导出到 Excel 文件中,或者

Word 文件中进行打印。比如移动的话费查询系统中就提供了将话费清单导入到 excel 表

格中的功能。这样在web 应用中,我们在浏览器中看到的数据可以被导出到 Excel 中了。

Excel 文件: xls 格式文件对应 POI API 为 HSSF 。 xlsx 格式为 office 2007 的文件格式,POI 中对应的API 为XSSF

Word 文件:doc 格式文件对应的 POI API 为 HWPF。 docx 格式为 XWPF

powerPoint 文件:ppt 格式对应的 POI API 为 HSLF。 pptx 格式为 XSLF

outlook :对应的 API 为 HSMF

Visio: 对应的 API 为 HDGF

Publisher : 对应的 API 为 HPBF

下面主要介绍如何操作Excel。

2. 下载 POI

到apache 官方网站下载POI 的jar 包

eda911b31db96003a270d73159a4279a.gif

af08cfef6a6304bd1384a7fd69bc34f5.gif

3. Excel 文件的结构

一个Excel 文档称为工作簿(worksheet),一个工作簿包含多个工作表(sheet),

每个工作表看起来像一张二维表格,由很多行(row)组成,每行由多个单元格组成(cell).

下面是POI HSSF API 中的类与Excel 结构的对应关系:

6a8f0d734be677c094efd1add35b5727.gif

4. 创建空的 Excel 文件

新建java项目,导入jar文件

001155f870f8604193fab7b3a357b188.gif

4.1 创建空的 xls 文件

794c77cbb09bdcbae5873e9ff169ff06.gif

创建的xls 文件用excel 打开的时候报错,因为这个 Excel 文件结构不完整。

4.2 创建空的 xlsx 文件

xlsx 文件是 office2007 文件格式,这种文件格式是基于 xml 的,所以需要在项目中加

入xml 文件解析的jar 包。如图,jar包在 poi 发行包中能够找到

85933a9985724b3e36a63ebadfa9a308.gif

3809c6d0ebb8045197b72004ed113214.gif

同样道理,因为xlsx 文件信息不完整,所以用Excel 打开的时候出现错误

5. 创建工作表

在前面创建的工作簿(WorkBook)的基础之上创建工作表

d5a8404e1ba055aab89e57e581ddb96f.gif

创建结果:

b7d4e4424dce766a4c31dff3b70fc3fa.gif

6. 创建行数据

49d59ab0da228b73e4862ac691d5d924.gif

执行后的结果:

104ad0d3eeb0b7c211433ba86baa5acd.gif

可以看到日期有一些问题。代码中使用的是”new Date()”,需要做一些转换。

bf7feb44d100a1fc6b12a0b03caf4dec.gif

这个创建好的格式可以反复使用。

7. 单元格对其方式

HSSFCellStyle 中定义了一些对齐方式

为了方便操作,定义一个创建单元格的方法。

35683dd44be61f3a2482cac785970b1e.gif

调用它创建单元格:

6cce8510f54dabd0f4a9c47812543b57.gif

更多单元格,样式属性

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值