Excel警告:文件的格式不同于文件扩展名指定的格式

在我的应用程序中,我使用apache POI 3.8来生成报告。

系统工作正常,并以xls格式生成报告。

但是,当我打开xls文件它给我警告打开文件之前。

在这里输入图像说明

这里是我正在使用的响应types…

response.setHeader("Content-Type", "application/vnd.ms-excel"); response.setHeader("Content-Disposition","attachment; filename="+xlsFileName+".xls"); 

我也试过…

 response.setHeader("Content-Disposition","attachment; filename="+xlsFileName+".xls"); response.setHeader("Content-Type", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); 

但问题依然存在。 在这两种情况下,如果我使用文件扩展名为“.xlsx”,那么它不给任何警告,工作正常。

所以任何人都可以build议我为什么会给MS-Excel 2003格式的警告?

Apache POI使用HSSFWorkbook对象为xlsx文件创buildxls文件和XSSFWorkbook对象。 请检查您用于创buildxls的对象。

http://poi.apache.org/spreadsheet/quick-guide.html