读取excel文件内容 (hutool-poi)

依赖包:

        <dependency>
            <groupId>cn.hutool</groupId>
            <artifactId>hutool-all</artifactId>
            <version>5.5.7</version>
        </dependency>

        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml</artifactId>
            <version>4.1.2</version>
        </dependency>

源码举例:

import cn.hutool.core.io.resource.ResourceUtil;
import cn.hutool.poi.excel.ExcelReader;
import cn.hutool.poi.excel.ExcelUtil;
import lombok.extern.slf4j.Slf4j;
import org.junit.Test;

import java.util.List;
import java.util.Map;

/**
 * 读取excel文件内容 (hutool-poi)
 * 参考文档:https://www.hutool.cn/docs/#/poi/%E6%A6%82%E8%BF%B0
 */
@Slf4j
public class TestExcel {

    /**
     * 说明:读取Excel中所有行和列,都用列表表示
     * [[姓名, 年龄, 工作, 备注], [Tom, 22, 学生, 人才],
     * [小明, 33, 快递员, 好人], [小红, 28, 文员, 美女]]
     */
    @Test
    public void testReadList() {
        ExcelReader excelReader = ExcelUtil.getReader(ResourceUtil.getStream("data/excel/test.xlsx"));
        List<List<Object>> list = excelReader.read();
        log.info(list.toString());
    }

    /**
     * 说明:读取为Map列表,默认第一行为标题行,Map中的key为标题,value为标题对应的单元格值。
     * [{姓名=Tom, 年龄=22, 工作=学生, 备注=人才}, {姓名=小明, 年龄=33, 工作=快递员, 备注=好人},
     * {姓名=小红, 年龄=28, 工作=文员, 备注=美女}]
     */
    @Test
    public void testReadMap() {
        ExcelReader excelReader = ExcelUtil.getReader(ResourceUtil.getStream("data/excel/test.xlsx"));
        List<Map<String, Object>> listAll = excelReader.readAll();
        log.info(listAll.toString());
    }

}
原文地址:https://www.cnblogs.com/gongxr/p/14352574.html