C# 打开XML以导出2007/2010

C# 打开XML以导出2007/2010,c#,export-to-excel,openxml-sdk,C#,Export To Excel,Openxml Sdk,在我的应用程序中,我已经具备了导出到2003格式的功能。在这里,我用模板构造一个字符串,并使用System.IO.File.WriteAllText进行写入 但它不适用于Excel2007/2010,这就是为什么我想将其转换为Openxml以支持2007和2010 我已经准备好了从模板创建单元格和行的字符串 我想就如何实现或任何机构有参考链接的建议 请让我知道 关于WriteAllText类将为您保存一个文本文件。您正在保存扩展名为xls的基于html(文本)的文件。这不是一个真正的xls文件(

在我的应用程序中,我已经具备了导出到2003格式的功能。在这里,我用模板构造一个字符串,并使用System.IO.File.WriteAllText进行写入

但它不适用于Excel2007/2010,这就是为什么我想将其转换为Openxml以支持2007和2010

我已经准备好了从模板创建单元格和行的字符串

我想就如何实现或任何机构有参考链接的建议

请让我知道


关于

WriteAllText类将为您保存一个文本文件。您正在保存扩展名为xls的基于html(文本)的文件。这不是一个真正的xls文件(实际上是一个二进制文件),但MS Excel可以识别和解释html格式


xlsx文件是二进制文件。您可以使用OpenXML Office库(Excel.XlFileFormat.xlOpenXMLWorkbook)或其他类似的.NET Excel库。查看更多详细信息。

您是否尝试过Office Interop Excel API来创建工作簿?@Haris该解决方案几乎与他当前的解决方案一样糟糕:速度慢、无法计数、随机错误,并且容易挂起。使用像EPPLUS这样的库,它可以在毫秒内编写本机xlsx文件,并且有一个很好的API,这不能说是本机Office开放XML库xlsx不是一个二进制文件,而是一个压缩的zip文件。如果您必须调试xlsx文件,这将非常方便。它确实是一个zip文件,但zip文件也是一个二进制文件。