码迷,mamicode.com
首页 > 其他好文 > 详细

DATATABLE 快速导出EXCEL方法

时间:2019-04-03 12:41:19      阅读:130      评论:0      收藏:0      [点我收藏+]

标签:filename   coding   enum   csv   roc   head   watch   ade   ast   

void Main()
{
    DataTable dataTable =new DataTable();
    
    for(int i=0;i<10;i++)
    {
        dataTable.Columns.Add("col"+i);
    }
    for(int i=0;i<1000000;i++)
    {
        var dr=dataTable.NewRow();
        foreach(DataColumn col in dataTable.Columns)
        {
            dr[col]=col.ColumnName+i;
        }
        dataTable.Rows.Add(dr);
    }
    string fileName="excel.csv";
    Stopwatch watch=new Stopwatch();
    watch.Start();
    ExportToExcel(dataTable,fileName);
    watch.Stop();
    ("导出完毕,用时:"+watch.Elapsed).Dump();
}
public static void ExportToExcel(DataTable dataTable,string fileName,bool isOpen=false)
{
    var lines = new List<string>();
    string[] columnNames = dataTable.Columns
                                    .Cast<DataColumn>()
                                    .Select(column => column.ColumnName)
                                    .ToArray();
    var header = string.Join(",", columnNames);
    lines.Add(header);
    var valueLines = dataTable.AsEnumerable()
                    .Select(row => string.Join(",", row.ItemArray));            
    lines.AddRange(valueLines);
    File.WriteAllLines(fileName,lines,Encoding.UTF8);
    if(isOpen)
        Process.Start(fileName);
}
---------------------
原文:https://blog.csdn.net/u012097590/article/details/78213452
 

DATATABLE 快速导出EXCEL方法

标签:filename   coding   enum   csv   roc   head   watch   ade   ast   

原文地址:https://www.cnblogs.com/hanje/p/10647823.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!