POI读取逐行读取大数据量的Excel文件

大数据量的Excel文件读取时间过长,采用逐行读取的方式,边读取边处理。

支持 xls 和 xlsx文件

1. 依赖

<!--poi-->
<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi</artifactId>
    <version>4.1.2</version>
</dependency>
<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi-ooxml</artifactId>
    <version>4.1.2</version>
</dependency>
<!--工具类-->
<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-lang3</artifactId>
    <version>3.9</version>
</dependency>

2. 示例

package com.ssh.util;

import com.ssh.util.excel.ExcelReaderUtil;
import com.ssh.util.excel.ExcelRowReader;
import org.junit.Test;

public class ExcelUtilTest {

    /**
     * 读取Excel文件内容
     */
    @Test
    public void readExcelTest(){
        try{
            // Excel文件位置
            String path = this.getClass().getResource("/test.xlsx").getPath();

            // Excel读取工具
            ExcelRowReader reader = null;


            reader = new ExcelRowReader(map -> {
                // 读取后的处理方法
                System.out.println(map);
            });

            ExcelReaderUtil.readExcelByFn(reader, path);
        }catch (Exception ex){
            ex.printStackTrace();
        }
    }

}

3. 相关代码

https://gitee.com/ssh971202/util

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容