c#用NPOI导出EXCEL

 public static bool ExportToExcelByNPOI(DataGridView dgv, string fileName)
        {
            bool b = false;
            try
            {
                IWorkbook workbook = new XSSFWorkbook();

                ISheet sheet = workbook.CreateSheet("Sheet1");

                IRow headerRow = sheet.CreateRow(0);
                //添加标题
                for (int i = 0; i < dgv.ColumnCount; i++)
                {
                    ICell cell1 = headerRow.CreateCell(i);
                    cell1.SetCellValue(dgv.Columns[i].HeaderText);
                }

                //添加数据
                for (int rowIndex = 1; rowIndex <= dgv.RowCount; rowIndex++)
                {
                    IRow row = sheet.CreateRow(rowIndex);
                    for (int colIndex = 0; colIndex < dgv.ColumnCount; colIndex++)
                    {
                        ICell cell1 = row.CreateCell(colIndex);
                        string tmp = dgv[colIndex, rowIndex - 1].Value.ToString();//DGV从0行开始
                        cell1.SetCellValue(tmp);
                    }
                }
                #region 参考
                /////////////
                //IRow excelRow = excelSheet.CreateRow(0);

                //ICell cell1 = excelRow.CreateCell(0);
                //cell1.SetCellValue("这是第一行第一列的值");

                //ICell cell2 = excelRow.CreateCell(1);
                //cell2.SetCellValue("这是第一行第二列的值");
                ///////////////// 
                #endregion
                using (FileStream file = new FileStream(fileName, FileMode.Create, FileAccess.Write))
                {
                    workbook.Write(file);
                }
                workbook.Close();
                b = true;
            }
            catch (Exception ex)
            {
                b = false;
                string msg = ex.Message;
            }
            return b;
        }

 

using NPOI.SS.UserModel;
using NPOI.XSSF.UserModel;

posted @ 2024-08-30 21:15  techNote  阅读(128)  评论(0)    收藏  举报