FlexCel创建了损坏的xlsx文件



我使用FlexCel库创建.xlsx格式的Excel报告。

创建.xls格式的文件时,一切都很正常。

当我尝试创建.xlsx格式的文件时,会创建该文件,但当我用Excel打开它时,我会收到一个错误,即该文件已损坏,无法打开。该文件的大小为.xls.的一半

如果有人遇到过类似的问题或知道解决方案,我将非常感谢你的回答。


编辑:我的代码

var templateFilePath = "D:/template.xlsx";
var newReportPath = "D:/report.xlsx";
using (var fr = new FlexCelReport(true))
{
fr.AddTable("SOReport", dataTable);
fr.Run(
templateFilePath,
newReportPath
);
}

我在使用旧版本的FlexCel以xlsx格式导出时遇到了同样的问题。

目前,我已经在FlexCel v5.1.0上测试了它,有一个有趣的行为:
如果我使用Excel 2016或更高版本创建xlsx模板,那么我在尝试打开导出的xlsx文件时会收到"文件已损坏"错误。

但是,如果我使用Excel2013或更低版本创建xlsx模板,那么我可以完美地打开它而不会出错。

还请注意,如果您在Excel 2016或更高版本中打开Excel 2013或更低版本创建的xlsx模板并保存它,则以后无法将其恢复到工作状态模板将丢失

太迟了,但我希望这能帮助你。


p.S.可能,FlexCel团队(TMS软件(从FlexCel的6.7.16.0版本开始修复了它。我这么认为是因为文件中有类似的内容:https://www.tmssoftware.com/site/flexcelnet.asp?s=history
Improved : Improved compatibility with invalid xls and xlsx files这样的点
但我不能争辩。

最新更新