导入excel成一个list集合不支持大文件倒入(优化点在于分批分线程导入)

时间:2023-03-09 14:32:26
导入excel成一个list集合不支持大文件倒入(优化点在于分批分线程导入)

package com.bj58.saletb.news.utils;

import org.apache.log4j.Logger;

import org.apache.poi.ss.usermodel.DataFormatter;

import org.apache.poi.ss.usermodel.Row;

import org.apache.poi.xssf.usermodel.XSSFSheet;

import org.apache.poi.xssf.usermodel.XSSFWorkbook;

import java.io.File;

import java.io.FileInputStream;

import java.io.IOException;

import java.io.InputStream;

import java.util.ArrayList;

import java.util.List;

;

/**

    • 用于读取office文件 -->



      同时注意在配置文件下放入excel/*.xls文件
  • Created by ******** on 20160905
  • 通读excel,由于excel的读取是按照字段读取,故需要设置边界量,表明已经到达边界

    /

    public class ImportExcelUtil {

    private final static Logger log = Logger.getLogger(ImportExcelUtil.class);

    private static final DataFormatter FORMATTER = new DataFormatter();/
    ** 格式化数值型单元格内容 */

    /**

    • (⊙o⊙)… excel表格中的数据按行转成map集合
    • 暂不支持按列转集合,待开发行转列
    • @param filePath 路径
    • @param sheetNum 第几个sheet档
    • @param lists 转换集合,在外部实例化,不能为null
    • /

      public static void getLineMessFromExcel(String filePath,int sheetNum,List
    • @param sheet excel内的sheet
    • @param lists 每行信息
    • **/

      public static void getMess(XSSFSheet sheet,List