创建Excel文件时无法关闭工作簿对象

时间:2019-11-28 11:28:46

标签: excel groovy apache-poi

我的项目中需要对Excel进行一些操作,因此我正在阅读一些在线代码以了解其工作原理。

现在,我正在使用groovy在指定的路径中创建只有两列的Excel文件。

我使用的代码实际上确实创建了一个excel,但是最后在关闭工作簿时,它未能引发异常。

这是我正在使用的代码:

import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List;

Workbook workbook = new XSSFWorkbook();
Sheet sheet = workbook.createSheet("Re-Trigger Incidents");

//creating font

Font headerFont = workbook.createFont();
headerFont.setBold(true);
headerFont.setFontHeightInPoints((short) 10);
headerFont.setColor(IndexedColors.RED.getIndex());

CellStyle headerCellStyle = workbook.createCellStyle();
headerCellStyle.setFont(headerFont);

// Create a Row
Row headerRow = sheet.createRow(0);

//create a cell in Row

Cell cell1 = headerRow.createCell(0);
cell1.setCellValue("Incident Number");
cell1.setCellStyle(headerCellStyle);

Cell cell2 = headerRow.createCell(1);
cell2.setCellValue("Queue Incident was Present in");
cell2.setCellStyle(headerCellStyle);

sheet.autoSizeColumn(0);
sheet.autoSizeColumn(1);


FileOutputStream fileOut = new FileOutputStream("D:\\MyFirstExcel.xlsx");
workbook.write(fileOut);

fileOut.close();

workbook.close();

并且在抛出异常时失败:

groovy.lang.MissingMethodException: No signature of method: org.apache.poi.xssf.usermodel.XSSFWorkbook.close() is applicable for argument types: () values: []
Possible solutions: last(), use([Ljava.lang.Object;), plus(java.lang.Object), plus(java.lang.Iterable), use(java.lang.Class, groovy.lang.Closure), use(java.util.List, groovy.lang.Closure)

据我所知,无参数关闭方法应该可以正常工作。

任何想法,我可能还缺少什么,因为我对此很陌生,我想我可能弄乱了一些我无法注意到的东西

0 个答案:

没有答案