疯狂的狮子li
2021-11-26 c00e3974050ff609fb34463d70292e768a786fea
ruoyi-common/src/main/java/com/ruoyi/common/utils/poi/ExcelUtil.java
@@ -4,9 +4,10 @@
import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy;
import com.ruoyi.common.convert.ExcelBigNumberConvert;
import com.ruoyi.common.excel.DefaultExcelListener;
import com.ruoyi.common.excel.ExcelResult;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.file.FileUtils;
import org.apache.poi.ss.formula.functions.T;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;
@@ -22,7 +23,7 @@
public class ExcelUtil {
   /**
    * 对excel表单默认第一个索引名转换成list(EasyExcel)
     * 同步导入
    *
    * @param is 输入流
    * @return 转换后集合
@@ -33,19 +34,34 @@
    /**
     * 对excel表单默认第一个索引名转换成list(EasyExcel)
     * 使用校验监听器处理导入
     *
     * @param is 输入流
     * @param clazz         对象类型
     * @param isValidate    是否 Validator 检验 默认为是
     * @return 转换后集合
     */
    public static <T> ExcelResult<T> importExcel(InputStream is, Class<T> clazz, boolean isValidate, boolean skipException) {
        ExcelListener<T> listener = new ExcelListener<>(isValidate, skipException);
    public static <T> ExcelResult<T> importExcel(InputStream is, Class<T> clazz, boolean isValidate) {
        DefaultExcelListener<T> listener = new DefaultExcelListener<>(isValidate);
        EasyExcel.read(is, clazz, listener).sheet().doRead();
        return listener.getExcelResult();
    }
   /**
    * 对list数据源将其里面的数据导入到excel表单(EasyExcel)
     * 使用自定义监听器导入
     *
     * @param is            输入流
     * @param clazz         对象类型
     * @param readListener  自定义监听器
     * @return 转换后集合
     */
    public static <T> ExcelResult<T> importExcel(InputStream is, Class<T> clazz, DefaultExcelListener<T> readListener) {
        EasyExcel.read(is, clazz, readListener).sheet().doRead();
        return readListener.getExcelResult();
    }
    /**
     * 导出excel
    *
    * @param list      导出数据集合
    * @param sheetName 工作表的名称