文章目录
一、POI是什么?
Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能。
操作Excel目前表流行的就是Apache POI和阿里巴巴的easyExcel
Apache POI介绍
Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能。
EasyExcel介绍
EasyExcel是阿里巴巴开源的一个excel,以使用简单,节省内存著称。 EasyExcel能大大减少占用内存的原因在解析Excel时没有将文件数据一次性全部加载到内存中,而是从磁盘上一行行读取数据,逐个解析。
二、常用信息
1.将用户信息导出为excel表格(导出数据…)
2.将Excel表中的信息录入到网站数据库(习题上传…)
开发中经常设计到excel的处理,如导出导入Excel到数据库中
三、导出Excel表具体操作
1.POI-Excel写
1.创建项目
建立一个空项目POItest.
2.导入pom依赖
代码如下(示例):
<!--导入依赖-->
<dependencies>
<!--java万物皆对象 -->
<!--xls(03)-->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>3.9</version>
</dependency>
<!--xlsx(07)-->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>3.9</version>
</dependency>
<!--日期格式化工具-->
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
<version>2.10.1</version>
</dependency>
<!--test-->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
<!---->
</dependencies>
3.在com.yang包下建立一个ExcelWriteTest测试类
//写 测试类
public class ExcelWriteTest {
String PATH="E:\\IDEA Workspace\\POItest\\";
}
4.生成一个工作薄
03版本:
@Test
public void testWrite03() throws Exception {
//1.创造一个工作簿
Workbook workbook=new HSSFWorkbook();//03版本HSSF
//2.创建一个工作表
Sheet sheet=workbook.createSheet("Java学习人数统计表");
//3.创建一个行
Row row1=sheet.createRow(0);//零代表第一行
//4.创建一个单元格
Cell cell11=row1.createCell(0);//表格中第一行的第一个数据
cell11.setCellValue("今日新增学习人数");
Cell cell12=row1.createCell(0);//表格中第一行的第二个数据
cell12.setCellValue("666");
//第二行(2.1)
Row row2=sheet.createRow(1);
Cell cell21=row2.createCell(0);//表格中第二行的第一个数据
cell21.setCellValue("统计时间");
//(2.2)
Cell cell22=row1.createCell(1);//表格中第一行的第一个数据
String time= new DateTime().toString("yyyy-MM-dd HH:mm:ss");
cell22.setCellValue(time);
//生成一张表(IO流) 03版本就是使用xls结尾! 07版本是使用xlsx!
FileOutputStream fileOutputStream = new FileOutputStream(PATH + "Java学习人数统计表03.xls")