C#使用第三方組件Epplus操作Excel表


    Epplus操作Excel基礎詳解

   1.什么是Epplus

        Epplus是一個使用Open Office XML文件格式,能讀寫Excel2007/2010文件的開源組件,在導出Excel的時候不需要電腦上安裝office。

        其中,Open Office XML文檔格式包括我們常見的xlsx、docx、pptx等,換而言之,我們常見的這些格式的文件都是基於捆綁XML文件的,使用Epplus操作的本質是通過操作XML文件去操作xlsx。XML,是一種可擴展標記語言,在計算機中,標記指計算機能理解的信息符號,它提供了統一的方法去描述和交換獨立於應用程序的結構化數據。使用XML來為Excel工作薄和Word文檔提供創建內容的能力。XML在.NET平台之中也具有一席之地,XML解析器在.NET Framework中,由System.XML命名控件提供的。

        我們基於.NET平台使用Epplus組件操作xlsx我們需要添加OpenOfficeXML命名空間。Epplus可以實現Excel上的各種基本功能(如導入導出數據、圖表、VBA、數據透視表、加密、數據驗證等),唯一缺點是不支持導出2003版Excel。

   2.使用Epplus創建Excel

       首先,添加Epplus的dll文件到項目中,同時在程序中,添加OpenOfficeXML命名空間。

       1.在using語句中,使用ExcelPackage創建ZIP包對象,並且可以在package中傳入路徑參數。

              using (ExcelPackage package=new ExcelPackage(new FileInfo("D:\\test.xslx")))
                {

                }

      在這里,我需要向大家詳細解釋一下Epplus-----Open Office XML格式的組件了。Open Office XML格式本身就是基於XML技術與ZIP技術實現的。XML技術,讓代碼實現了對Excel工作簿和word文檔的操作;ZIP技術,實現了多文件壓縮歸檔,讓如今的Excel和word還是單文檔形式。換而言之,就是如今的07版之后的,excel以及word其實質是一個捆綁了XML文件的ZIP包。

       2.使用ExcelWorksheet創建表對象

              

using (ExcelPackage package=new ExcelPackage(new FileInfo("D:\\test.xlsx")))
             {
                 ExcelWorksheet worksheet = package.Workbook.Worksheets.Add("test1");
                 worksheet = package.Workbook.Worksheets.Add("test2");
             }

 

      在using語句塊中,我們可以創建多個worksheet,但worksheet的名稱不能重復,否則會報錯。

      worksheet在這里有兩個作用,其一,創建了表對象,在Excel文件中,生成了一張表格;

                                             其二,為后面對Excel表格的各種屬性的更改以及操作實施的方法提供了一個有效的接口。

       3.使用Package.save()保存Excel

               

 using (ExcelPackage package=new ExcelPackage(new FileInfo("D:\\test.xlsx")))
                {
                       ExcelWorksheet worksheet = package.Workbook.Worksheets.Add("test1");
                       worksheet = package.Workbook.Worksheets.Add("test2");
                       package.Save();
                }

 

       只有使用,package.Save()函數后,Epplus組件才會將excel按初始化傳入的路徑在本地磁盤上進行保存。

    3.使用Epplus對Excel表的操作

         1.添加數據

         Epplus中給單元格賦值非常簡單,兩種方法:(ps:Epplus的所有行列數都是以1開始的)

       

         worksheet.Cells[1, 1].Value = "名稱";//直接指定行列數進行賦值
         worksheet.Cells["A1"].Value = "名稱";//直接指定單元格進行賦值

         2.表格樣式設置

        到了這里,大家應該可以明白,Epplus組件對Excel的所有操作,均是在Epplus組件內部完成的。

       Epplus組件工作流程:首先創建ZIP包對象ExcelPackage,隨后在包對象中通過workbook索引表對象ExcelWorksheet。對表的數據導入或導出,以及表格的格式設置,均是對worksheet進行設置或操作。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM