Esempio n. 1
0
 public static void DataFillRowsInSheet <T, R>(string fileFullName, EExcelType excel, string targetSheetName, SheetHeadDataToDo fillRowEvent, SheetRowDataToDo <R> fillRowsDataEvent, List <R> rows)
     where T : class
     where R : class
 {
     //单元格数据填充处理
     #region  定目标sheet页
     IWorkbook excelBook = GetExcelWorkBook(fileFullName, excel);
     if (excelBook == null)
     { //文件限定不正常
     }
     //判断工作页是否存在
     int    index = excelBook.GetSheetIndex(targetSheetName);
     ISheet sheet = null;
     if (index < 0)
     {//不存在则创建
         sheet = excelBook.CreateSheet(targetSheetName);
     }
     else
     {
         sheet = excelBook.GetSheetAt(index);
     }
     #endregion
     //列头
     fillRowEvent(sheet);
     //行数据
     if (fillRowsDataEvent != null)
     {
         fillRowsDataEvent(sheet, rows);
     }
     //数据存储
     FileStream fs = new FileStream(fileFullName, FileMode.Open, FileAccess.Write, FileShare.ReadWrite);
     fs.Flush();
     SaveSheet(excelBook, fs);
 }
Esempio n. 2
0
 public static void DataFillSheet <R>(string fileFullName, EExcelType excel, string targetSheetName, List <ExcelHeadAttribute> head, SheetRowDataToDo <R> fillRowsDataEvent, List <R> rows) where R : class
 {
     sheetHead = head;
     DataFillRowsInSheet <ExcelHeadAttribute, R>(fileFullName, excel, targetSheetName, FillSheetHead, fillRowsDataEvent, rows);
 }