POI提供了HSSF、XSSF以及SXSSF三种方式操作Excel。他们的区别如下:

HSSF:是操作Excel97-2003版本,扩展名为.xls。

XSSF:是操作Excel2007版本开始,扩展名为.xlsx。

SXSSF:是在XSSF基础上,POI3.8版本开始提供的一种支持低内存占用的操作方式,扩展名为.xlsx。

其次,大家需要了解下Excel不同版本的一些区别,这些限制其实间接的局限了POI提供的API功能。

1、支持的行数、列数

Excel97-2003版本,一个sheet最大行数65536,最大列数256。

Excel2007版本开始,一个sheet最大行数1048576,最大列数16384。

2、文件大小

.xlsx文件比.xls的压缩率高,也就是相同数据量下,.xlsx的文件会小很多。

3、兼容性

Excel97-2003版本是不能打开.xlsx文件的。

Excel2007开始的版本是可以打开.xls文件的。

根据以上内容,大家可以根据自己的需求进行选择,当然海量数据的导出肯定是推荐SXSSF的方式。编码过程中,其实不同方式的使用方式基本相同,所以互相切换也是比较简单的,只要把带有前缀的接口改成对应的就行了。如:

HSSF对应:HSSFWorkbook、HSSFSheet、HSSFRow、HSSFCell……

XSSF对应:XSSFWorkbook、XSSFSheet、XSSFRow、XSSFCell……

SXSSF对应:SXSSFWorkbook、Sheet、Row、Cell……

规律还是挺明显的吧,除了workbook,SXSSF的接口都不带前缀,另外两种方式的各个接口都带有对应的前缀。

HSSF、XSSF、SXSSF、对Excel的区别,以及对应不同后缀名Excel(xls,xlsx)的使用相关推荐

  1. POI之HSSF,XSSF,SXSSF,PDF循环写入分页

    针对POI3.9jar包中的相关工具类HSSF,XSSF,SXSSF的理解,以及PDF实现循环写入及分页的实现 需求如下: 根据接口传递的相关数据,导出一定样式(合并行列,上色,加粗,循环写入)的表格 ...

  2. java使用POI实现excel文件的读取,兼容后缀名xls和xlsx

    首先,引入所需的jar包: 如果是maven管理项目的jar包,只需在pom.xml中加上: [html] view plaincopy <!-- https://mvnrepository.c ...

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

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

  4. 使用java进行excel的读写,两种excel的区别以及easyexcel的使用

    EasyExcel Excel介绍: excel的样例: 工作簿:代表这个excel. 工作表:Sheet代表每一张表格 行属性:每一行的数据 列属性:每一列的数据 单元格:最小的属性 写入文件 03 ...

  5. 使用java导入excel表格中的内容进入到数据库中,出现excel表格的后缀名错误,如何解决。

    在学习java的过程中出现 The supplied data appears to be in the Office 2007+ XML. You are calling the part of P ...

  6. java poi 读取excel 编码_Java使用POI 读取和写入Excel指南

    做项目时经常有通过程序读取Excel数据,或是创建新的Excel并写入数据的需求:网上很多经验教程里使用的POI版本都比较老了,一些API在新版里已经废弃,这里基于最新的Apache POI 4.0. ...

  7. 用python实现excel 14个常用操作,用Python 操作 Excel,这篇文章别错过了!(超全总结)...

    在之前的办公自动化系列文章中,我已经对Python操作Excel的几个常用库openpyxl.xlrd/xlwt.xlwings.xlsxwriter等进行了详细的讲解. 为了进一步带大家了解各个库的 ...

  8. excel查重复_中小企业使用ERP管理软件与EXCEL的区别

    最近打电话好多中小企业管理层都会说我们用EXCEL就可以做账了,而且企业内部人员也比较少,业务往来也不是太频繁,上套软件简直有点小题大做. 其实我想表达的是人多人少并不是决定是否上软件的本质区别,关键 ...

  9. xlrd/xlwt和openpyxl处理Excel的区别与效率

    xlrd/xlwt和openpyxl处理Excel的区别与效率 说我是搞算法的,但是其实目前仅仅是python 因:近日需要处理一批表格xlsx整合成csv,但是文件太多 区别 python中xlrd ...

  10. 在xml中定义excel的sheet_excel中的“工作簿(扩展名xls)”和“表格(扩展名xml)”有什么区别?:excel表格里的数据加扩展名...

    excel中的"工作簿(扩展名xls)"和"表格(扩展名xml)"有什么区别? xml为可扩展标记语言,可以用IE或者记事本格式打开.xsl属于excel200 ...

最新文章

  1. web应用安全防御100技 好书再次阅读, 变的只是表象,被概念迷惑的时候还是静下心来回顾本质...
  2. 如何在JavaScript中获取时间戳
  3. 006---Linux用户、群组和权限
  4. c++判断二个数是否为相反的符号算法实现(附完整源码)
  5. @Value 注入静态变量
  6. 一个 IT 青年北漂四年的感悟
  7. 将serversocket 写在按钮事件中连接不上_看 Netty 在 Dubbo 中如何应用
  8. Linux: 近100个常用命令大全
  9. Python利用双端队列判断回文词
  10. 拒绝访问(Access Denied)错误的快捷诊断方法
  11. 侧方、s弯道、坡起相关
  12. Java高端培训蚂蚁课堂(每特学院)系列项目实战
  13. sqlserver的文件导入到mysql_导入50G文件到mysql,然后再倒入sqlserver
  14. linux dd 刻录光盘,使用dd命令制作U盘启动盘wodim刻录光盘cd dvd
  15. 网络爬虫js逆向解决网站登录RSA加密问题,不使用selenium如何实现登录,session维持登录状态请求爬取
  16. Eclipse下载安装配置使用
  17. springboot 解决缓慢的http攻击
  18. 如何用手机数据线连接电脑上网?
  19. 软件智能:aaas系统中的数学程序与技术服务之1 序篇之 绪言
  20. 图片裁剪工具之cropper.js

热门文章

  1. libmp4v2的编译及简单DEMO
  2. 40几岁读研究生计算机,年近四十岁,还有必要去考研和继续考博吗?不建议考全日制研究生...
  3. 异或为什么满足结合律,布尔代数与布尔环简介
  4. python 获取图像亮度和锐度,pytesseract 获取图片上字符串,及增加亮度,色感,对比度,锐度...
  5. 民生问题:房价,房贷,首付之间的暖昧关系(借首页一放,点醒一下各位兄弟)
  6. Java + OpenCV 实现图片合成(JavaCV)
  7. springboot点餐微信小程序系统毕业设计源码221144
  8. 纳德拉时代下的微软开源之路
  9. 途胜怎样与android手机互联,现代途胜车载蓝牙怎么连接,途胜手机互联映射教程...
  10. 数据库查询语句优化,mysql优化,join语句优化附带YYC松鼠短视频系统详细demo效果