1. 引言
经常在工作或者设计毕设时,只要是有关于Excel表格的都可以用得到poi和EasyExcel,有了这两大神器之一,再也不用担心表格对你的压力了
学习视频建议去b站关注狂神说JAVA
,他的视频通俗易懂,强烈推荐哦下面是关于狂神老师对于EasyExcel的讲解视频,觉得不错的可以去b站关注他传送门
【狂神说Java】POI及EasyExcel一小时搞定通俗易懂
2.Poi
POI是Apache软件基金会的,POI为“Poor Obfuscation Implementation”的首字母缩写,意为“简洁版的模糊实现”。
所以POI的主要功能是可以用Java操作Microsoft Office的相关文件,这里我们主要讲Excel
1 .导入依赖
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>3.17</version>
</dependency>
//下面是07(xlsx)版本的,上面是03(xls)
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>3.17</version>
</dependency>
2 .开启读写操作,代码走起
无非就是对api的充分认识,接下来我们先去了解他的api
Workbook wordkbook =new HSSFWorkbook();//创建一个Workbook对象
wordkbook.createSheet();//创建表名,如果不写参数,会有默认值
Row row1=sheet.createRow(0);//根据里面的数字拿到对应的行,0默认为第一行
Cell cell = row1.createCell(0);//根据行对象创建单元格,这里0为第一个
cell.setCellValue("");//可以给单元格赋值
写入一个Excel
package com.example.test;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.joda.time.DateTime;
import org.junit.Test;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
public class ExcelWriter {
//先要有个路劲
static String path="F:\\demo\\javapoi\\demopoi\\";
public static void main(String[] args) throws IOException {
//1,创建一个工作薄
Workbook wordkbook =new HSSFWorkbook();
//表名
Sheet sheet=wordkbook.createSheet("灰灰统计表");
//创建行
Row row1=sheet.createRow(0);
//4.创建一个单元格
Cell cell = row1.createCell(0);
cell.setCellValue("今日新增观众");
Cell cell2 = row1.createCell(1);
cell2.setCellValue("卢本伟");
//创建行
Row row2=sheet.createRow(1);
//4.创建一个单元格
Cell cell3 = row2.createCell(0);
cell3.setCellValue("统计时间");
Cell cell24= row2.createCell(1);
String time=new DateTime().toString("yyyy-MM-dd HH:mm:ss");
cell24.setCellValue(time);
//生成一张表 03是xls 07是xlsx
FileOutputStream fileOutputStream = new FileOutputStream(path + "灰灰统计表07.xlsx");
wordkbook.write(fileOutputStream);
fileOutputStream.close();
System.out.println("灰灰统计表03已生成");
}
}
上面写完后会在项目目录下生成一个表格
读取我们所写的表格
这个操作跟上述的写并没有什么不同,不同就是方法是get而不是set
static String path="F:\\demo\\javapoi\\demopoi";