ruby-on-rails – Railscasts第364页 – 导出到Excel:如何在打
当使用Ryan Bates的Railscasts Episode#362中关于导出到Excel(
https://github.com/railscasts/362-exporting-csv-and-excel)的示例应用程序时,我注意到Excel 2010(在Windows上)在打开我下载的.xls文件时给出了警告消息使用“下载为Excel”链接.
警告如下: “您尝试打开的文件格式与文件扩展名指定的格式不同.在打开文件之前,请验证文件是否已损坏且来自受信任的来源.您要立即打开该文件吗? “ 点击“是”,我可以正常打开文件.使用Excel 2011(在Mac上)时,我甚至没有收到警告消息.但我希望能够提供一个Excel文件,当用户从我的网站下载此类文件时,该文件不会提示该警告. 注意:我也尝试将应用程序中的所有引用从.xls替换为.xlsx,但Excel无法打开该文件.它抱怨:“Excel无法打开此文件.文件格式或文件扩展名无效.请验证文件是否已损坏,文件扩展名是否与文件格式匹配.” 我知道像AXLSX(https://github.com/randym/axlsx)这样的宝石,但我希望我可以使用Railscasts方法并快速修复以消除Excel 2010中的警告消息. 非常感谢你的帮助! 解决方法
Railscasts应用程序生成的xls文件实际上是旧Excel 2003 XML格式的XML文件.
最新版本的Excel有一个名为Extension Hardening的功能,当文件格式与文件扩展名不匹配时会生成此警告:
为了避免此警告,您必须以与文件扩展名匹配的格式生成Excel文件.在上面的链接中根据建议编辑注册表可能在实践中是不可行的.将扩展名更改为xml也可能有效. 作为xls的替代品writeexcel,xlsx和AXLSX(上面提到的)write_xlsx是不错的选择. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |