加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 将datatable转换为excel 2007(.xlsx)

发布时间:2020-12-15 04:10:57 所属栏目:百科 来源:网络整理
导读:我有一个DataTable我需要放入Excel 2007格式,并将其保存为Excel文件(.xlsx)2007. 任何人都可以帮助我实现这一点吗? 解决方法 您可以使用OLEDB数据提供程序,并将Excel视为另一个ADO.NET数据源,以循环访问您的DataTable行并将其插入到Excel电子表格中.这是一
我有一个DataTable我需要放入Excel 2007格式,并将其保存为Excel文件(.xlsx)2007.

任何人都可以帮助我实现这一点吗?

解决方法

您可以使用OLEDB数据提供程序,并将Excel视为另一个ADO.NET数据源,以循环访问您的DataTable行并将其插入到Excel电子表格中.这是一个Microsoft知识库文章,引导您完成许多细节.

http://support.microsoft.com/kb/316934/en-us

要记住的一件大事是,您可以在工作簿中创建工作簿和工作表,您可以通过在名称末尾附加一个“$”来引用现有工作表.如果您在工作表名称末尾省略“$”,OLEDB提供商将认为它是一个新的工作表,并将尝试创建它.

The dollar sign following the
worksheet name is an indication that
the table exists. If you are creating
a new table,as discussed in the
Create New Workbooks and Tables
section of this article,do not use
the dollar sign.

您可以在2003(.xls)或2007格式(xlsx)中创建和电子表格,并在连接字符串中定义,并指定要写入的文件,并指定扩展名.确保使用正确的OLEDB提供者版本.

如果要创建2003(.xls)版本,则使用此连接字符串:

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:Book1.xls;Extended Properties="Excel 8.0;HDR=YES

如果要创建2007(.xlsx)版本,请使用此连接字符串:

Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:Book1.xlsx;Extended Properties="Excel 12.0;HDR=YES

您可能必须从Microsoft下载ACE提供商才能创建XLSX文件.你可以找到它here.

我通常使用XLS提供程序,所以我还没有和XLSX提供程序一起工作.

希望这可以帮助.如果您有其他问题,请告诉我们

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读