我正在开发一个基于 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 文件。
请帮忙。
最佳答案
对于 future 可能需要这个的读者... 即使您的 Excel 文件是“正确的”,只要其结构与扩展名不正确匹配,Excel 无论如何都会提示。因此,如果您另存为 .XLS,它会看到经典的 Excel 文件。 您收到的弹出窗口是由于 Office 2007 中的新安全功能(称为“扩展强化”)所致,您可以根据需要禁用它 - 可以在注册表中手动禁用它,也可以将补丁保存到 .REG 文件中并将其共享给您客户等
将下面的这两行保存到 GiveItSomeName.reg 文件中,然后您可以通过电子邮件发送给您的客户并告诉他们执行它。
[HKEY_CURRENT_USER\Software\Microsoft\Office\12.0\Excel\Security]
"ExtensionHardening"=dword:00000000
关于java - 使用 Office 2007/2010 打开 .xls 文件时收到扩展检查(强化)警报,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5727106/