项目中需要做导出Excel功能,或者通过excel保存数据,或者读取excel的数据等功能。
poi是Apache的,所以功能很强大。
1.首先导入jar包。
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>3.17</version>
</dependency>
2.一个简单的例子
import java.io.File;
import java.io.FileOutputStream;
import java.util.Date;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.CellStyle;
import org.apache.poi.ss.usermodel.CreationHelper;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
/*
* poi知识
*/
public class Main_01 {
public static void main(String[] args) throws Exception {
/*
* 在盘下创建一个文件夹
*/
String directory = "C:\\poi";
File file = new File(directory);// 创建文件夹对象
if (!file.exists()) {// 如果不存在就创建
file.mkdirs();
}
Workbook wb = new HSSFWorkbook();// 定义工作薄
FileOutputStream fileout = new FileOutputStream("C:poi\\poi_01.xls");// 输出流
Sheet sheet = wb.createSheet("Sheet页1");// 定义sheet页面
Row row = sheet.createRow(0);// 创建第一行
Cell cell = row.createCell(0);// 创建一个单元格,第一列。
cell.setCellValue("sheet");//设置值
row.createCell(1).setCellValue(3);
row.createCell(2).setCellValue(new Date());
/*
* 时间格式,也可以转换好字符串格式
*/
CreationHelper creationHelper = wb.getCreationHelper();
CellStyle cellStyle = wb.createCellStyle();//创建样式
cellStyle.setDataFormat(creationHelper.createDataFormat().getFormat("yyy/mm/dd"));//设置格式。可以加时分秒 hh:mm:ss -/都可以
cell = row.createCell(3);
cell.setCellValue(new Date());
cell.setCellStyle(cellStyle);
for(int i = 4; i<10;i++) {
row.createCell(i).setCellValue("数值是"+i);
}
wb.createSheet("Sheet页2");// 定义sheet页面
wb.write(fileout);// 将workbook写入流
fileout.close();// 关闭输出流
}
}
输出效果:
起步很容易,直到poi可以做什么,然后根据项目需求查询API具体操作Excel.