其他分享
首页 > 其他分享> > Excel导出打印失败报错 (eg HSSF instead of XSSF)

Excel导出打印失败报错 (eg HSSF instead of XSSF)

作者:互联网

错误信息:

java.lang.RuntimeException: org.apache.poi.openxml4j.exceptions.OLE2NotOfficeXmlFileException: The supplied data appears to be in the OLE2 Format. You are calling the part of POI that deals with OOXML (Office Open XML) Documents. You need to call a different part of POI to process this data (eg HSSF instead of XSSF) 

 

原因是因为:

InputStream inputStream = session.getServletContext().getResourceAsStream("make/xlsprint/tOUTPRODUCT.xlsx");
Workbook workbook = new XSSFWorkbook(inputStream),XSSF操作的是Excel2007以上的版本,对应文件的后缀名是xlsx
Workbook workbook = new HSSFWorkbook(inputStream),HSSF操作的是Excel2003以前的版本,对应的文件后缀名是xls

检查输入流导入的文件的Excel的版本,使用对应的POI操作

标签:XSSF,eg,inputStream,后缀名,HSSF,POI,报错
来源: https://www.cnblogs.com/ryq1121/p/11146437.html