Spring Boot 如何获取 Excel sheet 页?
👨🎓作者:bug 菌
✏️博客:CSDN、掘金、infoQ、51CTO 等
🎉简介:CSDN 博客专家,C 站历届博客之星 Top50,掘金/InfoQ/51CTO 等社区优质创作者,全网粉丝合计 10w+,对一切技术感兴趣,重心偏 Java 方向;硬核公众号「 猿圈奇妙屋」,欢迎小伙伴们的加入,一起秃头,一起变强。
..
✍️温馨提醒:本文字数:1999 字, 阅读完需:约 5 分钟
如果小伙伴们在批阅文章的过程中觉得文章对自己有帮助,请别吝啬手中的赞呀,大胆的把文章点亮👍,相信你点赞了好的文章,平台也会经常给你推荐高质量好文,您的点赞三连(收藏+关注+留言)就是对 bug 菌写文道路上最好的鼓励与支持😘。时光不弃🏃🏻♀️,创作不停💕,加油☘️
一、前言🔥
环境说明:Windows10 + Idea2021.3.2 + Jdk1.8 + SpringBoot 2.3.1.RELEASE
收到一位读者的留言,问我如何判断 Excel 文件 sheet 数量,估计他做的业务是需要得知具体 sheet 数量再进行对于的 excel 读取业务吧。
既然如此,那我肯定不会坐视不理,bug 菌通常有求必应新时代活雷锋之称,今天,我就来带着大家来实现一下,java 到底如何获取 sheet 数量?
二、正文🔥
其实实现它很简单,我们压根不需要重复造轮子,首先 Apache POI 提供的第三方 jar 包,就已经完全够用,提供 API 对 Microsoft Office(Excel、word、PowerPoint、Visio 等)格式文件进行读和写的功能。而对于 excel,HSSFWorkbook 可用来支持 Java 从 97 到 2007+版本的 Excel 读写,在开发中我们经常使用 HSSF 用来操作 Excel 处理表格数据, 而 XWPF: 提供读写 Microsoft Word DOC2003 格式档案的功能等。
对于 HSSFWorkbook,它是一个工作簿,代表一个 excel 的整个文档。
如下是具体 poi 包引入依赖:
如下是 HSSFWorkbook 常用的一些方法。其中就包含本文所需要使用到的方法。
HSSFWorkbook(); // 创建一个新的工作簿
HSSFWorkbook(InputStream inputStream); // 创建一个关联输入流的工作簿,可以将一个 excel 文件封装成工作簿
HSSFSheet createSheet(String sheetname); 创建一个新的 Sheet
HSSFSheet getSheet(String sheetName); 通过名称获取 Sheet
HSSFSheet getSheetAt(int index); // 通过索引获取 Sheet,索引从 0 开始
HSSFCellStyle createCellStyle(); 创建单元格样式
int getNumberOfSheets(); 获取 sheet 的个数
setActiveSheet(int index); 设置默认选中的工作表
创建一个 HSSFWorkbook 类,我们可以发现还有很多方法,这些大家自行拓展,本文便不再一一赘述。
三、代码实现🔥
接下来,我就来实现如何获取 sheet 数量方法吧。我们用的还是 HSSFWorkbook 类提供的 getNumberOfSheets()方法。
1️⃣定义一个工具类
2️⃣main 函数测试
为了省时间,我就不定义 testcase 了,直接 psvm 测试验证一下,具体的大家自行测试,毕竟就是一个 api 的使用。
3️⃣测试验证
首先,我演示的 excel 文档,我共创建了 4 个 sheet 工作表。
我们自行 main 函数,查看控制台输出打印结果,我们可以发现,结果输出为:4。
经多次不同 sheet 数量读取,输出结果皆为一致。
... ...
ok,以上就是我这期的全部内容啦,如果还想学习更多,可以看看我的往期热文推荐哦,不积跬步,无以至千里; 不积小流,无以成江海,一口吃不成一个大胖子,加油!咱们下期拜拜~~
文末🔥
我是 bug 菌,一名想走👣出大山改变命运的程序猿。接下来的路还很长,都等待着我们去突破、去挑战。来吧,小伙伴们,我们一起加油!未来皆可期,fighting!
感谢认真读完我博客的铁子萌,在这里呢送给大家一句话,不管你是在职还是在读,绝对终身受用。
时刻警醒自己:
抱怨没有用,一切靠自己;
想要过更好的生活,那就要逼着自己变的更强,生活加油!!!
版权声明: 本文为 InfoQ 作者【bug菌】的原创文章。
原文链接:【http://xie.infoq.cn/article/7e5c53cd8d0605ccfd41f9286】。文章转载请联系作者。
评论