Apache POI:运行工作簿创建代码两次会给出错误"Sheet already exists",即使在工作簿.close() 之后也是如此



我正在编写用于填充工作簿的代码,然后将其写入excel文件。然而,当我第二次运行代码时,它抛出了一个错误,说&;sheet already exists&;

基本代码-

File file = getFileObjectForExistingXLSXTemplate(existingTemplateLocation);
Workbook workbook = null;
workbook = WorkbookFactory.create(file);
populateWorkbookThenWriteOutToExcel(workbook, someOtherDestinationDifferentFromTemplateLocation);
workbook.close();
file.delete();

请帮助我了解如何从内存中清除工作簿,当我第一次运行代码后再次。

最初,现有模板只有"工作表1"。代码如下:"表2"到它。第一次,一切都很顺利。但是当我第二次立即运行相同的代码时,它显示"Sheet 2已经存在"。

答案->使用WorkbookFactory.create(FileInputStream(file))修复了这个问题,但不确定如何修复。

相关内容

  • 没有找到相关文章

最新更新