【easyExcel处理excel】

本文介绍如何使用easyExcel处理Excel文件,包括配置依赖、利用EasyExcelUtils工具类进行默认解析及指定sheet读取的方法。适用于批量处理Excel数据场景。

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

easyExcel处理excel

pom

        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>easyexcel</artifactId>
           <version.easyexcel>2.2.6</version.easyexcel>
        </dependency>

easyExcelUtil


package com.yuanda.erp9.syn.util;

import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.SyncReadListener;
import org.springframework.util.StringUtils;

import java.security.MessageDigest;
import java.util.Calendar;
import java.util.HashMap;
import java.util.Map;
import java.util.function.Consumer;
import java.util.regex.Pattern;

public class EasyExcelUtils {



    /**
     * @Description: 解析excel,默认不实现(new consumer来实现)
     * @Params:
     * @Return:
     * @Author: Mr.myq
     * @Date: 2022/11/179:45
     */
    public static <T> void readExcel(String path, Class<T> T, Consumer<T> consumer) {
        EasyExcel.read(path, T, new SyncReadListener() {
            @Override
            public void invoke(Object object, AnalysisContext context) {
            	// 获取总行数(含表头)
				Integer rowNumber = context.readSheetHolder().getApproximateTotalRowNumber();
                consumer.accept((T) object);
            }
        }).doReadAll();
    }

    /**
     * @Description: 读取指定sheet 同步读取
     * @Params:
     * @Return:
     * @Author: Mr.myq
     * @Date: 2022/12/115:36
     */
    public static <T> void readExcelBySheet(String path, Class<T> T, Consumer<T> consumer, String sheetName) {
        EasyExcel.read(path, T, new SyncReadListener() {
            @Override
            public void invoke(Object object, AnalysisContext context) {
                consumer.accept((T) object);
            }
        }).sheet(sheetName).headRowNumber(1).doReadSync();
    }

}

使用



EasyExcelUtils.readExcel(filePath, FutureExcelData.class, new Consumer<FutureExcelData>() {
            @Override
            public void accept(FutureExcelData futureExcelData) {
            	## 解析excel代码
            }
            });

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

心有城府,腹有良谋

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值