一:场景说明
最近接到一个需求,让我解析Excel表。这要是简单常规的Excel表,那我还能摸一摸鱼给他整出来,主要是给我的Excel表长得跟下图中的Excel表一样复杂难搞,这可把我难倒了。于是开启了我的百度之旅,有可能是我不会百度或者理解能力太差,反正就是我的问题。愣是找不到一篇文章能让我这种智力不足的人弄明白该如何去解析这种复杂的Excel表格。于是我决定按照自己的思维去解析这种复杂的Excel表格,希望能得到小伙伴们的认可。
图片来源:https://blog.csdn.net/weixin_42803027/article/details/110189928
二:Apache POI常用类
这里我使用到是XSSF接口,毕竟除了能解析xlsx格式的Excel以外,也可以兼容解析xls格式的Excel。详细的使用可以常考上面的两篇文章,第一篇是讲HSSF的用法,第二篇是讲XSSF的用法。两者的用法非常相似,建议两篇文章结合使用。为了消除接下来的代码阅读障碍,这里将简单讲解一下案例中使用到的方法。
三:案例分析
1、思路说明
2、重要代码展示
1、获取cell单元格中的数据
2、通过行号和列号判断当前单元格是否属于合并单元格(MergedRegion类存储的是合并单元格的起始行号、结束行号、起始列号、结束列号)
3、解析复杂Excel模板(TargetRegion存储的是数据存储单元格的行号和列号,targetRegions是TargetRegion类的List集合,用来存储所有的数据存储单元格的位置)
4、根据数据存储单元格的位置去获取相关数据
3、成果展示
四:项目示例代码
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。