easyExcel工具类,表格处理
import com.alibaba.excel.EasyExcelFactory;
import com.alibaba.excel.ExcelReader;
import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.AnalysisEventListener;
import com.alibaba.excel.metadata.BaseRowModel;
import com.alibaba.excel.metadata.Sheet;
import com.google.common.base.Splitter;
import com.google.common.base.Strings;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;
import java.util.Map;
/**
* @Description easyExcel工具类
* @Author maxton.zhang
* @Date 2019/12/21 14:29
* @Version 1.0
*/
public class EasyExcelUtils {
private static final Logger LOGGER = LoggerFactory.getLogger(EasyExcelUtils.class);
/**
* 读取表格数据 返回list
*
* @param inputStream
* @param clazz
* @return
*/
public static List<? extends BaseRowModel> readExcelByModel(InputStream inputStream, Class<? extends BaseRowModel> clazz) {
// 解析每行结果在listener中处理 创建返回信息
List<? extends BaseRowModel> dataList = null;
// 解析监听器
ModelExcelListener excelListener = new ModelExcelListener();
try {
// 创建文件流
ExcelReader excelReader = EasyExcelFactory.getReader(inputStream, excelListener);
// 获取工作表数据
Sheet sheet = new Sheet(1, 1, clazz);
excelReader.read(sheet);
dataList = excelListener.getDataList();
} catch (Exception e) {
e.printStackTrace();
}
return dataList;
}
/**
* 通过Model类,读取工作表数据
*
* @param file 文件
* @param clazz BaseRowModel
*