• 大小: 10.13MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-10-26
  • 语言: Java
  • 标签: java  poi  导入excel  

资源简介

java导入excel的工具类。支持单个对象的赋值,列表对象的赋值,指定坐标的赋值。主要利用的是poi的技术,java反射和自定义注解

资源截图

代码片段和文件信息

package com.dao.chu.excel;

import java.io.IOException;
import java.io.InputStream;
import java.lang.reflect.Field;
import java.math.BigDecimal;
import java.text.DecimalFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Locale;

import org.apache.commons.beanutils.PropertyUtils;
import org.apache.commons.lang.StringUtils;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

/**
 * 
 * excel读取工具类
 * 
 * @author daochuwenziyao
 * @see [相关类/方法]
 * @since [产品/模块版本]
 */
public class ImportExeclUtil
{
    
    private static int totalRows = 0;// 总行数
    
    private static int totalCells = 0;// 总列数
    
    private static String errorInfo;// 错误信息
    
    /** 无参构造方法 */
    public ImportExeclUtil()
    {
    }
    
    public static int getTotalRows()
    {
        return totalRows;
    }
    
    public static int getTotalCells()
    {
        return totalCells;
    }
    
    public static String getErrorInfo()
    {
        return errorInfo;
    }
    
    /**
     * 
     * 根据流读取Excel文件
     * 
     * 
     * @param inputStream
     * @param isExcel2003
     * @return
     * @see [类、类#方法、类#成员]
     */
    public List> read(InputStream inputStream boolean isExcel2003)
        throws IOException
    {
        
        List> dataLst = null;
        
        /** 根据版本选择创建Workbook的方式 */
        Workbook wb = null;
        
        if (isExcel2003)
        {
            wb = new HSSFWorkbook(inputStream);
        }
        else
        {
            wb = new XSSFWorkbook(inputStream);
        }
        dataLst = readDate(wb);
        
        return dataLst;
    }
    
    /**
     * 
     * 读取数据
     * 
     * @param wb
     * @return
     * @see [类、类#方法、类#成员]
     */
    private List> readDate(Workbook wb)
    {
        
        List> dataLst = new ArrayList>();
        
        /** 得到第一个shell */
        Sheet sheet = wb.getSheetAt(0);
        
        /** 得到Excel的行数 */
        totalRows = sheet.getPhysicalNumberOfRows();
        
        /** 得到Excel的列数 */
        if (totalRows >= 1 && sheet.getRow(0) != null)
        {
            totalCells = sheet.getRow(0).getPhysicalNumberOfCells();
        }
        
        /** 循环Excel的行 */
        for (int r = 0; r < totalRows; r++)
        {
            Row row = sheet.getRow(r);
            if (row == null)
            {
                continue;
            }
            
            List rowLst = new ArrayList();
            
  

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       1094  2017-09-09 15:02  ImportExcelUtil\.classpath

     文件        391  2017-09-09 15:03  ImportExcelUtil\.project

     文件        598  2017-09-09 14:56  ImportExcelUtil\.settings\org.eclipse.jdt.core.prefs

     文件       1898  2017-09-09 15:05  ImportExcelUtil\bin\com\dao\chu\excel\ImportExeclUtil$DateUtil.class

     文件        724  2017-09-09 15:05  ImportExcelUtil\bin\com\dao\chu\excel\ImportExeclUtil$ExcelVersionUtil.class

     文件       8927  2017-09-09 15:05  ImportExcelUtil\bin\com\dao\chu\excel\ImportExeclUtil.class

     文件        445  2017-09-09 15:05  ImportExcelUtil\bin\com\dao\chu\excel\IsNeeded.class

     文件       2158  2017-09-09 15:03  ImportExcelUtil\bin\com\dao\chu\excel\StudentbaseInfo.class

     文件       1524  2017-09-09 15:03  ImportExcelUtil\bin\com\dao\chu\excel\StudentStatistics.class

     文件       1948  2017-09-09 15:11  ImportExcelUtil\bin\com\dao\chu\excel\TestImportExcel.class

     文件      10700  2017-09-09 15:03  ImportExcelUtil\excelfile\student.xlsx

     文件     232019  2017-09-09 15:01  ImportExcelUtil\lib\commons-beanutils-1.8.3.jar

     文件     284220  2017-09-09 15:02  ImportExcelUtil\lib\commons-lang-2.6.jar

     文件      52915  2017-09-09 15:00  ImportExcelUtil\lib\commons-logging-1.1.jar

     文件     313898  2017-09-09 15:00  ImportExcelUtil\lib\dom4j-1.6.1.jar

     文件     358180  2017-09-09 15:00  ImportExcelUtil\lib\log4j-1.2.13.jar

     文件    1820323  2017-09-09 15:00  ImportExcelUtil\lib\poi-3.8-20120326.jar

     文件      30446  2017-09-09 15:00  ImportExcelUtil\lib\poi-excelant-3.8-20120326.jar

     文件     933010  2017-09-09 15:00  ImportExcelUtil\lib\poi-ooxml-3.8-20120326.jar

     文件    4706775  2017-09-09 15:00  ImportExcelUtil\lib\poi-ooxml-schemas-3.8-20120326.jar

     文件    1186887  2017-09-09 15:00  ImportExcelUtil\lib\poi-scratchpad-3.8-20120326.jar

     文件      26514  2017-09-09 15:00  ImportExcelUtil\lib\stax-api-1.0.1.jar

     文件    2666695  2017-09-09 15:00  ImportExcelUtil\lib\xmlbeans-2.3.0.jar

     文件      17787  2017-09-09 15:05  ImportExcelUtil\src\com\dao\chu\excel\ImportExeclUtil.java

     文件        665  2017-09-09 15:05  ImportExcelUtil\src\com\dao\chu\excel\IsNeeded.java

     文件       1549  2017-09-09 14:57  ImportExcelUtil\src\com\dao\chu\excel\StudentbaseInfo.java

     文件       1033  2017-09-09 14:57  ImportExcelUtil\src\com\dao\chu\excel\StudentStatistics.java

     文件       1216  2017-09-09 15:11  ImportExcelUtil\src\com\dao\chu\excel\TestImportExcel.java

     目录          0  2017-09-09 15:03  ImportExcelUtil\bin\com\dao\chu\excel

     目录          0  2017-09-09 14:57  ImportExcelUtil\src\com\dao\chu\excel

............此处省略15个文件信息

评论

共有 条评论