poi表格的解析与生成

本文介绍了Apache POI库在程序开发中用于解析和生成Excel表格的方法。重点讲述了HSSFWorkbook和XSSFWorkbook的区别,以及如何进行表格解析(获取数据)和生成(报表制作)。在解析过程中,通过获取文件、sheet、行和单元格来提取数据,并进行了类型转换。生成表格时,涉及到设置字体、边框样式,创建单元格并应用样式,包括单元格的合并和特定数据格式(会计格式)的处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在程序开发中,数据可能会是通过解析上传的表格解析获取的,页面上展示的数据可能会要生成报表供客户查看,因此表格的解析与生成也是开发中重要的一部分。

表格的解析与生成都是使用的apache的poi包,其中XSSFWorkbook、HSSFWorkbook都可以进行表格的解析与生成,但是两者是有区别的:

HSSFWorkbook:是操作Excel2003以前(包括2003)的版本,扩展名是.xls

XSSFWorkbook:是操作Excel2007的版本,扩展名是.xlsx

1、  表格的解析(获取表格数据)

表格解析的过程:首先获取表格文件,然后获取到sheet页,再通过获取到对应行,最后获取单元格信息,代码如下:

 

其中最后一步是一个数据类型转换,因为我们从表格中取出的数据不确定是什么类型,因此我这边全部转换成了String,具体转换代码如下图:

 

循环遍历,将表格中的值取出来,然后进行判断、解析、入库即可。

2、  表格的生成(生成报表)

表格生成的过程:首先读取流,然后设置字体,边框样式,再获取sheet页,创建行,创建单元格,放值,放样式,最后再用输出流写出来。代码如下:

 

对于单元格样式,建议通过api自行选择,本文只提两个方面,一个是合并,另外一个是关于数据格式(会计专用的格式)。

2.1、合并

 合并单元格使用的是poi里自带的方法:

 

参数1:起始行 参数2:终止行 参数3:起始列 参数4:终止列

2.2、数据的格式处理

报表一般作为会计专用,金额上会按照会计专用的形式进行展示,那么,在我们生成表格的时候该如何处理呢?

具体的处理就是讲数据的格式定义好,放到单元格的格式里:

 

其中"_ * #,##0.00_ ;_ * -#,##0.00_ ;_ * \"-\"??_ ;_ @_ "即为会计专用的转换代码。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值