Esempio n. 1
0
 public DataTable ReadExcel(string filepath, Func <string, int, Type> callback)
 {
     using (FileStream fs = new FileStream(filepath, FileMode.Open, FileAccess.Read))
     {
         XSSFWorkbook xssfworkbook = new XSSFWorkbook(fs);
         ISheet       sheet        = xssfworkbook.GetSheetAt(0);
         IRow         header       = sheet.GetRow(sheet.FirstRowNum);
         List <int>   columns      = new List <int>();
         DataTable    dt           = new DataTable();
         CalculateTool.ReadHeader(header, dt, columns, callback);
         CalculateTool.ReadBody(sheet, dt, columns);
         return(dt);
     }
 }
Esempio n. 2
0
 public override DataTable ReadExcel(string filepath)
 {
     if (string.IsNullOrEmpty(filepath))
     {
         throw new ArgumentNullException(nameof(filepath));
     }
     using (FileStream fs = new FileStream(_filepath, FileMode.Open, FileAccess.Read))
     {
         IWorkbook  workbook = WorkbookFactory.Create(fs);
         DataTable  dt       = new DataTable();
         ISheet     sheet    = workbook.GetSheetAt(0);
         IRow       header   = sheet.GetRow(sheet.FirstRowNum);
         List <int> columns  = new List <int>();
         CalculateTool.ReadHeader(header, dt, columns);
         CalculateTool.ReadBody(sheet, dt, columns);
         return(dt);
     }
 }