kingjiong
ListView中存放了大约1000条记录,每条记录有50多个字段,若用for循环将数据搬移到excel中速度异常缓慢,有没有快速算法?请高手指导~~

用数组,或DataTable填充,速度贼快
使用多个单元格写入的速度远快于对单元格进行逐个写入,因此是提高生成Excel速度的一个重要途径。   
    
 示例代码  
   
  Excel.Application   xApp   =   new   Excel.ApplicationClass();  
  string[,]   strs   =   new   string[9,   9];  
  for(int   i   =   0;   i   <   9;   i++)  
  for(int   j   =   0;   j   <   9;   j++)  
  strs[i,   j]   =   Convert.ToString((i   +   1)   *   (j   +   1));  
   
  Excel.Workbook   xBook   =   xApp.Workbooks.Add(Missing.Value);  
  Excel.Worksheet   xSheet   =   (Excel.Worksheet)xBook.Worksheets[1];  
  xSheet.get_Range(xSheet.Cells[1,   1],   xSheet.Cells[9,   9]).Value   =   strs;  


如同List.AddRange()比循环用List.Add()速度快


先把数据填充到一个二维数组   
再将二维数组填充到RANGE   
用种方法导入过5万行数据   
只用了10秒

分类:

技术点:

相关文章:

  • 2021-12-23
  • 2021-12-08
  • 2021-05-19
  • 2021-06-21
  • 2021-11-29
  • 2022-01-14
  • 2022-02-14
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-05-19
  • 2021-12-22
  • 2021-04-19
  • 2022-01-09
  • 2022-01-11
相关资源
相似解决方案