常用场景
将用户信息导出为excel表格
将excel的信息导入到数据库,减轻大量网站录入量 开发经常使用到excel导入导出
Apache POI官网:
Apache POI项目的任务是创建和维护Java API,以基于Office Open
XML标准(OOXML)和Microsoft的OLE 2复合文档格式(OLE2)来处理各种文件格式。简而言之,您可以使用Java读写MS
Excel文件。此外,您可以使用Java读写MS Word和MS PowerPoint文件。Apache POI是您的Java Excel解决方案(适用于Excel 97-2008)。
easyexcel官网:
POI使用
创建普通的maven项目
导入依赖
org.apache.poi
poi
3.9
org.apache.poi
poi-ooxml
3.9
joda-time
joda-time
2.10.5
junit
junit
4.12
xls03和xls07的区别 : 数据量的大小 03的只有65535行
03版本的:
创建测试类
static String path="H:\\CSDN\\POI\\src\\main\\java\\com\\dj";
@Test
public void testWrite03() throws IOException {
//1. 创建工作簿
Workbook workbook=new HSSFWorkbook();
//2. 创建工作表 参数:表的名称
Sheet sheet=workbook.createSheet("joker_djの表");
//3. 创建一个行
Row row1=sheet.createRow(0);
//4. 创建一个单元格
Cell cell1 = row1.createCell(0);//第一行的第一列
cell1.setCellValue("姓名");//设置值
Cell cell2 = row1.createCell(1);//第一行的第二列
cell2.setCellValue("joker_dj");//设置值
//第二行
Row row2=sheet.createRow(1);
//4. 创建一个单元格
Cell cell21 = row2.createCell(0);//第二行的第一列
cell21.setCellValue("统计时间");//设置值
Cell cell22 = row2.createCell(1);//第二行的第二列
String time = new DateTime().toString("yyyy-MM-dd HH:mm:ss");
cell22.setCellValue(time);//设置值
//生成一张表
FileOutputStream fileOutputStream = new FileOutputStream(path + "/统计表03.xls");
workbook.write(fileOutputStream);//输出文件内容
//关闭流
fileOutputStream.close();
System.out.println("文件输出完毕");
}
输出效果
07版本的
测试
@Test
public void testWrite07() throws IOException {
//1. 创建工作簿
Workbook workbook=new XSSFWorkbook();
//2. 创建工作表 参数:表的名称
Sheet sheet=workbook.createSheet("joker_djの表");
//3. 创建一个行
Row row1=sheet.createRow(0);
//4. 创建一个单元格
Cell cell1 = row1.createCell(0);//第一行的第一列
cell1.setCellValue("姓名");//设置值
Cell cell2 = row1.createCell(1);//第一行的第二列
cell2.setCellValue("joker_dj");//设置值
//第二行
Row row2=sheet.createRow(1);
//4. 创建一个单元格
Cell cell21 = row2.createCell(0);//第二行的第一列
cell21.setCellValue("统计时间");//设置值
Cell cell22 = row2.createCell(1);//第二行的第二列
String time = new DateTime().toString("yyyy-MM-dd HH:mm:ss");
cell22.setCellValue(time);//设置值
//生成一张表
FileOutputStream fileOutputStream = new FileOutputStream(path + "/统计表07.xlsx");
workbook.write(fileOutputStream);//输出文件内容</