1.maven
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>4.0.1</version>
</dependency>
2.简化版代码
public static void main(String[] args) throws IOException {
//excel模板的位置
String path = "d:\\Users\\xychenkj\\Desktop\\demo.xlsx";
FileInputStream inputStream = new FileInputStream(path);
//创建工作簿 注意这个是针对于xlsx文件的 xls用的是另一个类
XSSFWorkbook sheets = new XSSFWorkbook(inputStream);
//创建工作表
XSSFSheet sheet = sheets.getSheetAt(0);
//创建列样式 我这里只写了边框和居中
XSSFCellStyle cellStyle = sheets.createCellStyle();
cellStyle.setAlignment(HorizontalAlignment.CENTER_SELECTION);
cellStyle.setBorderTop(BorderStyle.THIN);
cellStyle.setBorderBottom(BorderStyle.THIN);
cellStyle.setBorderLeft(BorderStyle.THIN);
cellStyle.setBorderRight(BorderStyle.THIN);
//模拟添加10行数据
for (int i = 1; i <= 10; i++) {
//创建一行
XSSFRow rowX = sheet.createRow(i);
//创建一列
XSSFCell cell0 = rowX.createCell(0);
//向这一列设置数据
cell0.setCellValue(i);
//向这一列设置样式
cell0.setCellStyle(cellStyle);
//同上 可以不停的创建列出来
XSSFCell cell1 = rowX.createCell(1);
cell1.setCellValue("2022-08-15 至 2022-08-21");
cell1.setCellStyle(cellStyle);
}
//创建输出流对象
FileOutputStream out = new FileOutputStream("d:\\Users\\xychenkj\\Desktop\\out.xlsx");
//写入
sheets.write(out);
out.flush();
sheets.close();
out.close();
System.out.println("写完收工");
}
3.效果