• NET npoi 保存文件


    npoi完整代码:NET npoi帮助类

            public static void DataTableToExcel(List<DataTable> dataTables, string filePath)
            {
                if (dataTables == null || !dataTables.Any())
                    throw new Exception("dataTables不能为null");
                bool isOldThan2007 = Path.GetExtension(filePath)?.ToLower() == ".xls";
                IWorkbook book = dataTables.ToWorkbook(isOldThan2007);
                using (FileStream fs = new FileStream(filePath, FileMode.Create, FileAccess.Write))
                {
                    book.Write(fs);
                }
            }
            public static IWorkbook ToWorkbook(this List<DataTable> dataTables, bool isOldThan2007)
            {
                IWorkbook book = isOldThan2007 ? new HSSFWorkbook() : (IWorkbook)new XSSFWorkbook();
                foreach (var dataTable in dataTables)
                {
                    if (dataTable == null)
                        continue;
                    ISheet sheet = book.CreateSheet(dataTable.TableName);
                    IRow headerRow = sheet.CreateRow(0);
                    foreach (DataColumn column in dataTable.Columns)
                    {
                        headerRow.CreateCell(column.Ordinal).SetCellValue(column.ColumnName);
                    }
    
                    for (int i = 0; i < dataTable.Rows.Count; i++)
                    {
                        DataRow row = dataTable.Rows[i];
                        IRow dataRow = sheet.CreateRow(i + 1);
                        for (int j = 0; j < dataTable.Columns.Count; j++)
                        {
                            dataRow.CreateCell(j).SetCellValue(row[j]?.ToString());
                        }
                    }
                }
                return book;
            }
  • 相关阅读:
    铁轨
    POJ 2385 -- Apple Catching
    POJ 3258 -- River Hopscotch
    POJ 1469 -- COURSES (二分匹配)
    POJ 2349 -- Arctic Network
    最小生成树
    NOIP200703守望者的逃离
    NOIP200706字符串的展开
    POJ 1036 -- Gangsters
    POJ 1952 -- BUY LOW, BUY LOWER
  • 原文地址:https://www.cnblogs.com/Cailf/p/10063822.html
Copyright © 2020-2023  润新知