Winform版Datatable大数据量Excel导出,流操作

转载 2013年12月03日 16:15:49
private void Excelout(DataTable ds,string path)
{
 try
            {
                long totalCount = ds.Rows.Count;               
                long rowRead = 0;
                float percent = 0;


                StreamWriter sw = new StreamWriter(path, false, Encoding.GetEncoding("gb2312"));
                StringBuilder sb = new StringBuilder();
                for (int k = 0; k < ds.Columns.Count; k++)
                {
                    sb.Append(ds.Columns[k].ColumnName.ToString() + "\t");
                }
                sb.Append(Environment.NewLine);
                for (int i = 0; i < ds.Rows.Count; i++)
                {
                    rowRead++;
                    percent = ((float)(100 * rowRead)) / totalCount;
                    textBox1.Text = "正在写入[" + percent.ToString("0.00") + "%]...的数据";
                    System.Windows.Forms.Application.DoEvents();
               
    DateTime time = DateTime.Parse(ds.Rows[i][0].ToString());
                    sb.Append(time.ToString("HH:mm:ss") + "\t");
                       
                    for (int j = 1; j < ds.Columns.Count; j++)
                    {


                        //if (ds.Rows[i][j] == null)
                        //{
                        //    sb.Append("\t");
                        //}
                        //else
                        //{
                             sb.Append(ds.Rows[i][j].ToString() + "\t");
                        //} 
                    }
                    sb.Append(Environment.NewLine);
                }
                sw.Write(sb.ToString());
                sw.Flush();
                sw.Close();
                MessageBox.Show("已经生成指定Excel文件!");
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }            

}
转载:http://bbs.csdn.net/topics/390445405

分sheet导出excel 大数据量导出

    我在做一个大量数据分成多个sheet进行excel导出的功能,但是数据量为40000条的时候,就会抛一个错误java.lang.IllegalStateException: getOutput...

C#将dataGridView中显示的数据导出到Excel(大数据量超实用版)

开发中很多情况下需要将dataGridView控件中显示的数据结果以Excel或者Word的形式导出来,本例就来实现这个功能。由于从数据库中查找出某些数据列可能没必要显示出来,在dataGridVie...

使用jxl导出大数据量EXCEL时内存溢出的解决办法

使用jxl导出大数据量EXCEL时内存溢出的解决办法 1、通过jx1最新版本的采用临时文件写入EXCEL功能,设定临时文件的位置,可以有效的避免内存溢出: wbSetting...

大数据量导出到Excel时需要注意的问题

大数据量导出到Excel时需要注意的问题 1、现象:问题描述 我们发现当统计的数量超大时候,在统计总量明细时,导出到Excel表格的时候就会抛出如下表格的异常 (1)内存溢出异常 java...

JeeSite的Excel导入、导出、支持大数据量,应用annotation最小化配置

JeeSite的Excel导入、导出、支持大数据量,使用annotation最小化配置 介绍: 对Apache POI 3.9的简单封装,实现Excel的导出导入功能。使用Annotati...

大数据量时,Gridview无法导出Excel

今天用户反映,Gridview无法导出Excel,一些电脑出现"Maximum request length exceeded"错误,  Server Error in '/' Applica...

大数据量导出Excel的方案

测试共同条件:  数据总数为110011条,每条数据条数为19个字段。  电脑配置为:P4 2.67GHz,1G内存。  一、POI、JXL、FastExcel比较  POI、JXL、FastEx...

使用ApachePOI生成XLSX格式Excel文档大数据量导出

最近在做使用POI进行大数据量导出,现在把其整理成工具类供大家参考。Apache POI 3.8版本增加了前缀为SXSSF相关的类,主要用于大数据量的写入与读取。关于ApachePOI导出Excel基...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Winform版Datatable大数据量Excel导出,流操作
举报原因:
原因补充:

(最多只允许输入30个字)