您好,经调研,目前的性能表现和预期的一样,对于文本,GcExcel会获取值和数字格式,然后将值格式化为字符串,这是一个非常耗时的操作。
所以,您可以跳过格式化操作以加快速度:
- for (int rowIndex = 0; rowIndex < dataRows.GetLength(0); rowIndex++)
- {
- for (int colIndex = 0; colIndex < 300; colIndex++)
- {
- if (worksheet.Range[rowIndex, colIndex].Value != null &&
- (worksheet.Range[rowIndex, colIndex].NumberFormat == null || string.Equals(worksheet.Range[rowIndex, colIndex].NumberFormat,"General", StringComparison.InvariantCultureIgnoreCase)))
- {
- var text = worksheet.Range[rowIndex, colIndex].Value.ToString();
- }
- else
- {
- //data processing operations
- var text = worksheet.Range[rowIndex, colIndex].Text;
- }
- }
- }
复制代码
或者一次性获取所有的数据。
如:Range["C1:C20000"].getValue() |