EXCEL读取

public Map getExcelContentByInputStream(InputStream is){
  try{
   HSSFWorkbook   workbook  =  new   HSSFWorkbook(is);//创建对Excel工作簿文件的引用
      for (int numSheets = 0; numSheets < workbook.getNumberOfSheets(); numSheets++) {
       if (null != workbook.getSheetAt(numSheets)) {
        HSSFSheet aSheet = workbook.getSheetAt(numSheets);//获得一个sheet
        for (int rowNumOfSheet = 0; rowNumOfSheet <= aSheet.getLastRowNum(); rowNumOfSheet++){
         System.out.println("行数=/t"+rowNumOfSheet);
         if (null != aSheet.getRow(rowNumOfSheet)){
          HSSFRow aRow = aSheet.getRow(rowNumOfSheet); //获得一个行
          StringBuffer content = new StringBuffer();
          for (short cellNumOfRow = 0; cellNumOfRow <= aRow.getLastCellNum(); cellNumOfRow++){
           if (null != aRow.getCell(cellNumOfRow)){
            HSSFCell aCell = aRow.getCell(cellNumOfRow);//获得列值
            if (aCell.getCellType() == HSSFCell.CELL_TYPE_STRING) {
             System.out.print("/t"+cellNumOfRow+"/t"+aCell.getStringCellValue());
             content.append(aCell.getStringCellValue());
            } else if (aCell.getCellType() == HSSFCell.CELL_TYPE_NUMERIC) {
             System.out.print("/t"+cellNumOfRow+"/t"+aCell.getNumericCellValue());
             content.append(""+aCell.getNumericCellValue());
            }
           }
          }
          System.out.println("!!"+content);
         }
        }
       }
      }
  }catch(Exception e){
   e.printStackTrace();
  }
  return null;
 }

当excel某些栏有下拉列表时可能会报错.解决方法是将POI换成3.0以上的.或者在保存EXCEL时焦点不要停放在有下拉列表的栏中.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值