/*** 读取excel数据*/public static List<Map<String, Object>> exportListFromExcel(File file, int sheetNum) throws IOException {  return exportListFromExcel(new FileInputStream(file), FilenameUtils.getExtension(file.getName()), sheetNum);  }  public static List<Map<String, Object>> exportListFromExcel(InputStream is, String extensionName, int sheetNum) throws IOException {  Workbook workbook = null;  if (extensionName.toLowerCase().equals(XLS)) {  workbook = new HSSFWorkbook(is);  } else if (extensionName.toLowerCase().equals(XLSX)) {  workbook = new XSSFWorkbook(is);  }  return readCell(workbook, sheetNum);  }  public static List<Map<String, Object>> readCell(Workbook workbook, int sheetNum) {  Sheet sheet = workbook.getSheetAt(sheetNum);  List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();int sNum=1;if(sheetNum==0) { //如果是片1 sNum=0;}else if(sheetNum==1){//如果是片2 sNum=2;}for (int i=sNum; i <= sheet.getLastRowNum(); i++) {  Row row = sheet.getRow(i);  Map<String, Object> map = new HashMap<String, Object>();  for (Cell cell : row) {  CellReference cellRef = new CellReference(row.getRowNum(), cell.getColumnIndex());  String key = cellRef.formatAsString();  switch (cell.getCellType()) {  case Cell.CELL_TYPE_STRING:  map.put(key, cell.getRichStringCellValue().getString());  break;  case Cell.CELL_TYPE_NUMERIC:  if (org.apache.poi.ss.usermodel.DateUtil.isCellDateFormatted(cell)) {  map.put(key, cell.getDateCellValue());  } else {DecimalFormat dfs = new DecimalFormat("0");map.put(key, dfs.format(cell.getNumericCellValue()));  }  break;  case Cell.CELL_TYPE_BOOLEAN:  map.put(key, cell.getBooleanCellValue());  break;  case Cell.CELL_TYPE_FORMULA:  map.put(key, cell.getCellFormula());  break;  case Cell.CELL_TYPE_BLANK:  break;  case Cell.CELL_TYPE_ERROR:  break;  default:  map.put(key, "");  }  }  list.add(map);  }  return list;  } 

POM文件

<!-- poi --><!-- https://mvnrepository.com/artifact/org.apache.poi/poi --><dependency><groupId>org.apache.poi</groupId><artifactId>poi</artifactId><version>3.17</version></dependency><!-- https://mvnrepository.com/artifact/org.apache.poi/poi-ooxml --><dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml</artifactId><version>3.17</version></dependency><!-- commons-io --><!-- https://mvnrepository.com/artifact/commons-io/commons-io --><dependency><groupId>commons-io</groupId><artifactId>commons-io</artifactId><version>2.5</version></dependency>
<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-lang3 --><dependency><groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId><version>3.7</version></dependency>

POI解析Excel文件工具类相关推荐

  1. java读写excel文件poi_Java利用POI读写Excel文件工具类

    本文实例为大家分享了Java读写Excel文件工具类的具体代码,供大家参考,具体内容如下 package com.test.app.utils; import java.io.File; import ...

  2. java解析excel报错,poi解析excel文件报错

    getFileMagic() only operates on streams which support mark(int) 使用 bis 解决 BufferedInputStream bis = ...

  3. Java面试poi中excel版本大小_java 中 poi解析Excel文件版本问题解决办法

    java 中 poi解析Excel文件版本问题解决办法 发布时间:2020-10-02 03:46:15 来源:脚本之家 阅读:91 作者:程诺 poi解析Excel文件版本问题解决办法 poi解析E ...

  4. poi解析Excel文件版本问题

    poi解析Excel文件时有两种格式: HSSFWorkbook格式用来解析Excel2003(xls)的文件 XSSFWorkbook格式用来解析Excel2007(xlsx)的文件 如果用HSSF ...

  5. java使用poi解析Excel文件

    本文取自http://www.cnblogs.com/hongten/p/java_poi_excel_xls_xlsx.html java中读取Excel文件并解析 Excel2007及以前的文件使 ...

  6. 基于hutool和POI的excel导入工具类

    excel导入也可以很简单,利用POI进行导入,以及强大的hutool工具类,再加上对业务的理解,就可以封装成一个超级好用的业务类了. maven依赖 <!-- Hutool超级工具类 http ...

  7. java解析csv文件工具类,java操作CSV文件工具类

    离线路灯 UID:3 注册时间2011-08-21 最后登录2021-03-15 在线时间5398小时 发帖659 精华44 金币3650 威望1881 股份280 发帖659 金币3650威望188 ...

  8. Java解析eml文件工具类

    依赖 <!-- https://mvnrepository.com/artifact/javax.mail/mail --><dependency><groupId> ...

  9. Java基础系列19:使用JXL或者POI生成和解析Excel文件

    一 简介 如题所示,当我们需要在Java中解析Excel文件时,可以考虑使用JXL或POI的API来解析. 二者的区别如下: jxl现在基本上没被维护了,最近一次更新时间还是几年前.相反,poi属于A ...

最新文章

  1. num2cell用法
  2. 【js】创建数组的三种方法
  3. Jvm常见面试题及答案汇总1000道(春招+秋招+社招)
  4. 数字图像处理的Matlab实现(1)—绪论
  5. [svn] 分支开发
  6. Citrix_XenServer-6.1安装过程详解(转)
  7. sqlserver 班级排名_Sqlserver:班级排名问题(转发)
  8. mysqldump导出数据库 (dos环境下)
  9. 2016.3.22(关系型数据库简介,管理数据库和表)
  10. 利用SMS实现资产管理
  11. 男人在拥有女人之后!
  12. FORTRAN文件读写操作 from《FORTRAN95 程序设计》
  13. 只有PHP大牛才能读懂的内涵图
  14. 办公必备计算机软件,推荐8个职场办公的必备软件,每一个都能让你有所收获!...
  15. windows gvim下载dejavu sans mono字体并更换
  16. 求树的最大宽度(层次遍历法)
  17. 教你怎样用Python进行语音识别!非常精准!
  18. python好用的软件_比python好用的分析软件_财务分析报表怎么做_企业财务报表分析软件-帆软...
  19. (FortiGate)飞塔防火墙配置端口映射(VIP)
  20. 3dmax转化html,VRayMtl Converter材质转换3dsmax插件V3.97版

热门文章

  1. setuid和setgid
  2. Go 分布式学习利器(4)-- 条件和循环
  3. Go:分布式学习利器(1) -- 开发环境搭建 + 运行第一个go程序
  4. leetcode-300 最长上升子序列
  5. 50个顶级开源营销应用程序
  6. MVC3项目依赖文件错误解决
  7. 我的软考之路(九)——总结篇
  8. 转_前端开发技术概要
  9. windows版本下使用xdebug
  10. 修改CentOS yum源