我使用Microsoft Excel Interop库导出Excel文件。但是,该库的限制是:用于编写Excel文件的库
- 要求用户的计算机必须具有Microsoft Excel。
- 写入内容时,必须打开Microsoft Excel以自动执行。
- 要保存文件,用户必须手动执行:单击文件 - >保存。
我需要一个库:
- 写的内容到内存Excel格式。
- 将此内容以编程方式保存到文件。
说明:我使用.net 2.0和C#。
谢谢。
我使用Microsoft Excel Interop库导出Excel文件。但是,该库的限制是:用于编写Excel文件的库
我需要一个库:
说明:我使用.net 2.0和C#。
谢谢。
我已经使用EPPlus为的.xlsx读/写和它一直很大
+1我也用过它。写入Excel电子表格> 65k行是一件轻而易举的事情。 – PostMan 2011-03-22 02:43:35
.xlsx与Excel 2003兼容?我需要一个可以用Microsoft Excel 2003打开的Excel格式。谢谢。 – 2011-03-22 04:05:41
如果您安装Microsoft兼容包,Excel 2003可以打开.xlsx文件:http://office.microsoft.com/en-us/support/microsoft-office-compatibility-pack-for-word-excel-and-powerpoint- 2007-file-formats-HA010168676.aspx – 2011-03-22 12:37:09
我认为在没有安装Excel的情况下实现此目的的唯一方法就是直接编写文件格式。微软在几年前记录了文件格式。你可以在http://msdn.microsoft.com/en-us/library/cc313118.aspx找到它们。
更新 我刚刚找到EPPlus。瞧瞧吧http://epplus.codeplex.com/
您可以使用ODBC或OLE接口读写Excel文件。但是,我不确定是否可以使用它创建文件,您可能需要保留具有正确布局的虚拟空文件。
更新:相应地,从@Joel Gauvreau下面评论可能使用这种技术创建一个excel文件。
链接: http://support.microsoft.com/kb/257819
http://www.codeguru.com/cpp/data/mfc_database/microsoftexcel/article.php/c1131
这就是我正在做的,你可以用正确的布局创建一个空文件,将原始数据转储到工作表中。如果需要,您可以创建一些漂亮的工作表,链接到这些数据。它运作良好。该文件不需要存在,但是如果不使用现有文件,则必须先创建该模式。 – 2011-03-22 03:02:28
@Joel谢谢你,我不确定这是否可能。我会在答案中加上你的回应。 – stefan 2011-03-22 03:04:03
结果对于您可以事先进行格式化的现有文件要好得多。通过使用OleDbConnection创建文件,您只需获取数据的简单列表。 – 2011-03-22 03:15:48
我也曾有过一些项目,其中“Excel格式”的意思是“我的文件可以在Excel中打开”,并分隔文本是一个简单的解决方案。 – SteveCav 2011-03-22 02:41:12
对。但至少我可以在Excel 2003中打开它。谢谢。 – 2011-03-22 06:43:32