转载——c# 大批量数据导出到excel[此为个人分享] [问题点数:20分,结帖人rocket2010]
2013-04-30 11:37
405 查看
我的方法不是使用微软的excel操作类,因为那种实在爆慢,一个个单元格循环写,实在太慢了。【不信朋友们可以试试】
而使用io写的话 半分钟都不用
我数据库数据量为:120000行 29列
技术要点:1.使用的是StreamWriter sw = new StreamWriter(path, false,Encoding.GetEncoding("gb2312"));最终生成文件
2.使用 StringBuilder sb = new StringBuilder();类把查询出来的数据组合为一句超长字符串一次性插入到excel中,
sb.Append(ds.Tables[0].Columns[k].ColumnName.ToString() + "\t");
注意,可不能漏了"\t" 这个是非常重要的! 因为c# "\t"就等于 键盘上的Tab [朋友们可以试试:打开新的txt然后输入1按Tab,输入2按Tab,输入3按Tab保存,然后打开excel文件 把刚刚保存的txt文件拉进去打开你就发现原来。这样写的话1 2 3 会分别在每个单元格上的了。所以上面才使用 "\t"连起来数据库出来的那堆数据,这样一次性导进去,他们就会按照每个单元格来填充!]
需要引用:
using System.Threading;
using System.IO;
方法如下:
C# code
?
这是从高手的博客中转载过来的,当时正好碰到大量数据导入EXCEL速度慢的难题,这篇文字看了感觉就像神来之笔,我的问题被这篇文章迎刃而解了,遂转载之、收藏之。
而使用io写的话 半分钟都不用
我数据库数据量为:120000行 29列
技术要点:1.使用的是StreamWriter sw = new StreamWriter(path, false,Encoding.GetEncoding("gb2312"));最终生成文件
2.使用 StringBuilder sb = new StringBuilder();类把查询出来的数据组合为一句超长字符串一次性插入到excel中,
sb.Append(ds.Tables[0].Columns[k].ColumnName.ToString() + "\t");
注意,可不能漏了"\t" 这个是非常重要的! 因为c# "\t"就等于 键盘上的Tab [朋友们可以试试:打开新的txt然后输入1按Tab,输入2按Tab,输入3按Tab保存,然后打开excel文件 把刚刚保存的txt文件拉进去打开你就发现原来。这样写的话1 2 3 会分别在每个单元格上的了。所以上面才使用 "\t"连起来数据库出来的那堆数据,这样一次性导进去,他们就会按照每个单元格来填充!]
需要引用:
using System.Threading;
using System.IO;
方法如下:
C# code
?
相关文章推荐
- C# 操作数据导出到Excel遇到的一个小问题
- [原创]大量数据导出为Excel文件的问题解决(C#,ASP.NET)
- 内存或磁盘空间不足,Microsoft Office Excel 无法再次打开或保存任何文档。 [问题点数:20分,结帖人wenyang2004]
- c# 大批量数据导出到excel
- C#导出EXCEL超大数据源码,解决内存溢出问题,使用OLEDB方式(NPOI做不到)
- C# 将内存中的datatable数据导出为Excel(方法一,以文件流方式导出)【转载】
- c# .Net :Excel NPOI导入导出操作教程之数据库表信息数据导出到一个Excel文件并写到磁盘示例分享
- 解决C# 导出gridview中的数据到excel 时, 全数字时 0 被去掉的问题
- 分享大批量数据导出到excel
- C# 将内存中的datatable数据导出为Excel(方法二,创建Excel对象导出)【转载】
- C# 操作数据导出到Excel遇到的一个小问题
- c# 大批量数据导出到excel[1]
- SQL大圣之路笔记——把数据库中表里的数据导出成Excel(Copy时,会因分隔符问题导致许多数据存放在一个单元格中)
- POI : 解决大批量数据导出Excel产生内存溢出的方案
- C#中ListView数据导出excel表
- c#将dataTable中的数据导出到Excel表中
- 使用HTML,CSS快速导出数据到Excel数据格式化问题
- (转载)datagrid数据导出到excel文件给客户端下载的几种方法
- C3P0连接池问题,APPARENT DEADLOCK!!! Creating emergency..... [问题点数:20分,结帖人lovekong]
- ASP.NET(C#)将数据导出到Word或Excel