SpreadhsheetGear读取批量Excel文件

时间:2017-05-02 07:11:21

标签: c# .net spreadsheetgear

我想使用SpreadhsheetGear

阅读批量Excel文件
    public ValueFormulaSet ReadData(string sheetName, string address)
    {
        var wrksh = this.Workbook.Worksheets[sheetName];

        var range = wrksh.Range[address];

        var result = new ValueFormulaSet();

        result.RowCount = range.RowCount;

        result.Values = (object[,])range.Value;

        result.Formulas = (object[,])GetFormulas(range);

        return result;
    }

我想知道这种方法会读取整个数据并将其填入result.Values 因为我想使用批量数据文件,这种方法可能会占用大量内存。

有没有其他方法可以改进方法以获得更好的内存优化?

我不知道SpreadhsheetGear如何处理批量文件。 我正在寻找一些延迟加载方法,通过它我可以做一些缓冲, 或者我想做一些事情,比如实施IDataReader并使用SqlBulkCopy.WriteToServerAsync Method (IDataReader)

1 个答案:

答案 0 :(得分:0)

SpreadsheetGear 完全加载整个excel文件。 我和他们的技术支持人员确认了这件事,他们回复了我

  

“我们的产品是一个完整的电子表格组件,带有   计算引擎和丰富的工作簿操作功能。   因此,我们必须完整地加载Excel文件 - 不像   可能有其他第三方电子表格产品   在这里或只是部分加载文件的部分   有“

SpreadsheetGear适用于需要执行某些计算和工作簿操作的情况。 我的要求只是从批量excel文件导入数据,所以我切换到 OLE DB 并将SQLBulkCopy类与数据读取器一起使用。