本文主要是介绍POI快速入门教程 | HSSF,XSSF,SXSSF的区别,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
POI有三种API:
- POI-HSSF
- POI-XSSF
- SXSSF
官方文档的说法:
HSSF是POI项目的Excel '97(-2007)文件格式的纯Java实现。XSSF是POI Project的Excel 2007 OOXML(.xlsx)文件格式的纯Java实现。
自3.8-beta3以来,POI提供了基于XSSF构建的低内存占用SXSSF API。
SXSSF是XSSF的API兼容流式扩展,用于在必须生成非常大的电子表格时使用,并且堆空间有限。SXSSF通过限制对滑动窗口内行的访问来实现其低内存占用,而XSSF允许访问文档中的所有行。不再在窗口中的旧行变得不可访问,因为它们被写入磁盘。
简单的说,HSSF对应旧的xls格式,XSSF对应新的xlsx格式,SXSSF是在XSSF的基础上,支持导出大批量的excel数据。
要使用POI,要知道以下关键代码:
//创建工作簿,对应整个xlsx文件XSSFWorkbook workbook = new XSSFWorkbook();//创建sheet,对应excel的单个sheetXSSFSheet sheet = workbook.createSheet("sheet1");//创建行,对应excel中的一行XSSFRow row = sheet.createRow(0)//创建单元格,对应row中的一格XSSFCell cell = row.createCell(0);//单元格设置值cell.setCellValue("cell");//单元格设置样式cell.setCellStyle(style);
其中style要从workbook中创建,简单的style示例:
XSSFCellStyle style = workbook.createCellStyle();//居中style.setAlignment(HorizontalAlignment.CENTER);style.setVerticalAlignment(VerticalAlignment.CENTER);//borderstyle.setBorderLeft(BorderStyle.THIN);style.setBorderTop(BorderStyle.THIN);style.setBorderRight(BorderStyle.THIN);style.setBorderBottom(BorderStyle.THIN);
将workbook保存到文件:
FileOutputStream file = new FileOutputStream("example.xlsx");workbook.write(file);file.close();
现在就导出成功了。
POI的maven依赖:
<dependency><groupId>org.apache.poi</groupId><artifactId>poi</artifactId><version>4.1.0</version></dependency><dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml</artifactId><version>4.1.0</version></dependency>
version自行更换就好。
一个已经封装好的工具:https://github.com/gaoice/easyexcel
方便快速导出excel。
这篇关于POI快速入门教程 | HSSF,XSSF,SXSSF的区别的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!