2012年9月6日 星期四

使用NPOI做Excel輸出

記錄一下使用NPOI輸出Excel的方法。



 1.先下載NPOI的檔案並將.DLL參考進專案,目前是1.2.5版,可支援到.net 4.0

    其中有兩個DLL分別為:Ionic.Zip.dll、NPOI.dll

 2.寫Code

    Web:

 
        private void CreateEmptyExcel()
        {
            HSSFWorkbook workbook = new HSSFWorkbook();
            MemoryStream ms = new MemoryStream();

            // 新增試算表。
            workbook.CreateSheet("試算表 A");
            workbook.CreateSheet("試算表 B");
            workbook.CreateSheet("試算表 C");

            workbook.Write(ms);
            Response.AddHeader("Content-Disposition", string.Format("attachment; filename=EmptyWorkbook.xls"));
            Response.BinaryWrite(ms.ToArray());

            workbook = null;
            ms.Close();
            ms.Dispose();
        }
    AP:

        private static void CreateExcel()
        {
            HSSFWorkbook workbook = new HSSFWorkbook();

            // 新增試算表。
            workbook.CreateSheet("試算表 A");
            workbook.CreateSheet("試算表 B");
            workbook.CreateSheet("試算表 C");

            //有資料內容的試算表
            HSSFSheet sheet1 = (HSSFSheet)workbook.CreateSheet("Sheet1");
            sheet1.CreateRow(0).CreateCell(0).SetCellValue("測試00");
            sheet1.CreateRow(1).CreateCell(0).SetCellValue("測試10");

            FileStream file = new FileStream(@"C:\NPOI.xls", FileMode.Create);
            workbook.Write(file);
            file.Close();
        }
參考資料:

   在 Server 端存取 Excel 檔案的利器:NPOI Library

   NPOI、OpenXML SDK、OpenOffice.org SDK 寫入資料到 EXCEL 檔案

   [C#][NPOI Library] 存取 Excel 檔案利器

   使用NPOI產生EXCEL檔案 For C#

沒有留言:

張貼留言