如何读取Excel里面的图片

2,979 阅读1分钟

前言

​ 客户发了一个excel文档,文档里面是客户整理的问题,一行对应一个问题,还有截图说明,图片也是单独放在每行的小格子里面,如下图所示 ​

打开excel文档,双击图片,并不能放大图片,这让我咋看?

推荐

今天撸主给大家推荐一款神器Apache POI,Apache POI 简介是用Java编写的免费开源的跨平台的 Java API,Apache POI提供API给Java程式对Microsoft Office(Excel、WORD、PowerPoint、Visio等)格式档案读和写的功能。

案例

开发环境

  • Maven

  • JDK1.8

pom.xml引入:

 <!--hutool工具类-->
<dependency>
    <groupId>cn.hutool</groupId>
    <artifactId>hutool-poi</artifactId>
    <version>5.3.5</version>
</dependency>

 <!--Apache POI-->
<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi-ooxml</artifactId>
    <version>3.17</version>
</dependency>

测试代码

public static void main(String[] args) throws Exception {
	ExcelReader reader = ExcelUtil.getReader("test.xlsx");
    Workbook workbook = reader.getWorkbook();
    List<? extends PictureData> pictures = workbook.getAllPictures();
    for (PictureData picture : pictures) {
        byte[] data = picture.getData();
        FileOutputStream out = new FileOutputStream(UUID.randomUUID() + ".jpg");
        out.write(data);
        out.close();
    }
}

小结

最后发现钉钉里面打开excel文档,里面的图片是可以预览的,不过知道了java怎么导入图片的,说不定下次项目中就可以用到