需求:根据Excel后缀名获取WorkBook,兼容Excel2003和Excel2007

/**
* @Description: TODO 判断Excel的版本,获取Workbook
* @date 2018年7月3日
*/
public Workbook getWorkBook(File file){
Workbook workbook = null;
InputStream is = null;
if (file.exists()) {
try {
//1.获取文件输入流
is = new FileInputStream(file);
//2.获取文件名称
String fileName = file.getName();
if (StringUtils.isNotBlank(fileName)) {
if (fileName.endsWith(".xlsx")) {
workbook = new XSSFWorkbook(is); //Excel 2003
}else if (fileName.endsWith(".xls")) {
workbook = new HSSFWorkbook(is); //Excel 2007/2010
}
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (is!=null) {
try {
is.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
return workbook;
}

2018-07-03 根据Excel后缀名获取WorkBook相关推荐

  1. php excel扩展名,excel后缀名是什么

    Microsoft Excel是Microsoft为使用Windows和Apple Macintosh操作系统的电脑编写的一款电子表格软件. 直观的界面.出色的计算功能和图表工具,再加上成功的市场营销 ...

  2. java后台获取Excel后缀名以及sheet页名称

    String fileSuffix = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(&quo ...

  3. 服务器显示文件后缀名,获取文件后缀名

    获取文件后缀名 内容精选 换一换 文件类型可查询MIME参考手册.获取文件后缀名/** * @description 获取文件后缀名 * @param {String} fileName 文件全名,包 ...

  4. Excel后缀名 .xls和.xlsx 有什么区别?

    1.文件格式不bai同. .xls 是一个特有的二进du制格式,其核心结构是复合文档类型的结构 .xlsx 的核心结构是 XML 类型的结构,采用的是基于 XML 的压缩方式,使其占用的空间更小.xl ...

  5. File类如何获取文件后缀名

    File类如何获取文件后缀名 /*** 获取指定文件或文件夹的后缀名* @param fileName 文件名称* @return*/public static String getFileSuffi ...

  6. 根据文件扩展名获取系统图标

    1 /// <summary> 2 /// 根据文件后缀名获取系统图标. 3 /// </summary> 4 /// <param name="extensi ...

  7. 获取不带后缀名的Excel文件名Python

    import os path = r"C:/user" #filename为user文件夹内的所有excel名称的list(包括后缀) #filename_设置一个空list,准备 ...

  8. 获取文件后缀名(doc.excel)

    checkFileExt(file){ //file是文件对象const fileName = file.name;if(this.fileExts && this.fileExts. ...

  9. python批量合并excel文件,后缀名为xls

    最近处理的一个项目需要用到批量合并excel表格,我就用python拼了一个代码,可以实现传入一个根目录,然后将该目录下所有的后缀名为xls的excel表格进行合并,将结果输出在根目录下 第三方库配置 ...

最新文章

  1. 嵌入式linux程序没有任何提示退出,答网友问:嵌入式Linux执行程序提示Not found的解答...
  2. WiFi密码分享有妙招 不必口头相传
  3. Java 代码性能优化
  4. JavaScript中关于setTimeout和setInterval的使用
  5. 20050909:女乘客钓男司机?
  6. iOS项目转移到自动引用计数
  7. python pdf转word并保持原有的格式_将PDF转换为Word文档后,格式即可解决问题
  8. 图形化硬件编程 ——数码管时钟——之米思齐篇
  9. 将照片修改成一寸大小
  10. Spring中AOP的Introductions使用介绍
  11. Factor Graphs and GTSAM
  12. 两数互素有什么性质_两个数互素的性质
  13. 重启泼水节。泰国市场借势回春,卧兔网络带你看东南亚卖家的机会
  14. 我改变世界、我已看透、我不再是个程序员-IT创世诸神如是说
  15. office2016无法打开新建的Excel表格,但是能打开以前新建的,解决办法如下
  16. php如何获取客户端请求ip地址的方法
  17. Springboot下RedisTemplate的两种序列化方式
  18. 【社招和校招】格灵深瞳合肥研发中心计算机视觉算法岗招聘
  19. 最大类间方差法(大津法OTSU)原理
  20. I.MX6ULL开发板基于阿里云项目实战 3 :阿里云iot-SDK 移植到arm开发板

热门文章

  1. Android Studio+Emulator启动黑屏解决方法
  2. Windows11 Store应用商店下载的软件,怎么创建快捷方式
  3. Java 同步监视器中的 wait() 和 notify() 方法的具体实现
  4. ESXi Arm Edition version 1.11更新,及安装Win11 Arm版
  5. 第三方应用调用高德地图
  6. JavaScript实现猜数字游戏(猜一位和四位数字)
  7. Python 爬虫问卷星填写
  8. 2022全球新能源与智能汽车供应链创新大会|爱普搜同期项目对接会
  9. 10 个最佳 VSCode 插件,帮助你写出更优雅的代码
  10. 生产计划管理软件有哪些?哪个好