前言
平时需要处理excel文件,一般有2种选择:apache的poi和jxl。jxl一般对文件处理支持不太好,主要还是使用poi更多一些。做个简单介绍。
注:含jxls的简单处理
简介poi
poi可以处理excel文件,同时还能处理word和ppt文件。可从apache官网进行查看。以下的内容均为官网所得。
处理excel时,有HSSF、XSSF等区别。简单就是HSSF支持excel97等以后,XSSF支持excel2007等以后。具体可以搜索查看excel区别和HSSF、XSSF区别。
HSSF是POI工程对Excel 97(-2007)文件操作的纯Java实现
XSSF是POI工程对Excel 2007 OOXML (.xlsx)文件操作的纯Java实现
POI 3.8版本开始,提供了一种基于XSSF的低内存占用的API—-SXSSF
项目依赖maven
poi一般依赖几个文件,poi、poi-ooxml、poi-schemas等等。具体版本可去maven仓库查询。
maven依赖如下:
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>3.1.4</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>3.1.4</version>
</dependency>
<dependency>
<groupId>net.sf.jxls</groupId>
<artifactId>jxls-core</artifactId>
<version>1.0.5</version>
</dependency>
概述
以下是简单的写入/写出excel例子:
// Workbook wb = WorkbookFactory.create(inputStream);
Workbook wb = new HSSFWorkbook(); //new XSSFWorkbook();
Sheet sheet = wb.createSheet("new sheet"); //sheet = excel的工作表
Row row = sheet.createRow(0); //row = excel的行
Cell cell = row.createCell(0); //cell = 单元格
cell.setCellValue(123); // 设置值
FileOutputStream fileOut = <