使用Office 2007/2010打开.xls文件时获取扩展检查(强化)警报

我正在研究基于struts的Web应用程序。 在该应用程序中,我们从Jsp生成并下载xls文件。 在Jsp文件和web.xml中,我将内容类型设置为“application / vnd.ms-excel”

似乎jsp页面生成的xls文件不是真正的excel文件,而是MS Excel理解的文本格式。 因此,excel打开文件并显示类似于MS Excel保存的excel文件的输出。 由于较新版本的MS Office 2007/2010会检查文件扩展名和文件内的内容,因此会发出警告,指出文件格式与内容不匹配。

要摆脱警告,我如何确保生成的xls是真正的office excel文件。

请帮忙。

对于可能需要这种情况的未来读者……即使你的excel文件是“正确的”,Excel也会抱怨,只要它的结构与扩展名不匹配即可。 因此,如果您保存为.XLS,它希望看到经典的Excel文件。 您获得的弹出窗口是因为Office 2007中的新安全function,称为扩展加固,您可以根据需要禁用它 – 在注册表中手动删除,或者您可以将修补程序保存到.REG文件并将其共享给您客户等

将下面的这两行保存到GiveItSomeName.reg文件中,然后您可以通过电子邮件发送给您的客户并告诉他们执行它。

[HKEY_CURRENT_USER\Software\Microsoft\Office\12.0\Excel\Security] "ExtensionHardening"=dword:00000000