DataTable导出到Excel除了循环还有别的方法吗?(C# Winform)

来源:百度知道 编辑:UC知道 时间:2024/05/30 00:45:16
将dataTable或datagridview中的数据导出到Excel,用循环写的时候,我的是965的板加P4加512的内存,处理的时候还是约每秒计算导出3条记录,可我的数据一般都上千条,而且操作频繁,以这样的速度要等好久,请问有什么别的好方法么?我一个同事试过不用Excel,而用水晶报表,可是速度也一样。请指点。。

没别的办法,只能一行一行的写

给个代码片段提供一下思路,因为excel也是一个数据库

myOleCon.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=";
myOleCon.ConnectionString+=fi.FullName;\\Full File Path
myOleCon.ConnectionString+=";Extended Properties=\"Excel 8.0;HDR=Yes;IMEX=1\"" ;
//use it like DB
SQL like//sqlStr= "insert into table ...";

我也是用的循环。

循环扫描二维数组。得到Excel可以调整。
有些导出Excel导出一张整的图片。

可以用一个叫做Aspose.Excell的组件,不是微软提供的excel组件。做法是循环内存的datatable,然后用streamwriter写到csv文件和xls文件,然后用这个组件加载,就比较快了。cpu对上万次循环肯定是特别快的,一瞬间。但是如果你直接循环写EXCEL,那肯定特别慢。