• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于NPOI數(shù)據(jù)導出方法的研究與實現(xiàn)

      2017-11-15 19:36:48連俊光
      電腦知識與技術(shù) 2017年28期

      連俊光

      摘要:在軟件項目中,筆者常常用到將查詢出來的數(shù)據(jù),導出到Excel表格中去的功能,或者將Excel表格中的數(shù)據(jù)導入到內(nèi)存中去。該文以使用NPOI導出到Excel為例,對NPOI中的workbook,sheet,row,cell等幾個名詞及具體對應(yīng)的操作類,類的方法,進行了詳細的講解、使用。

      關(guān)鍵詞:NPOI;Excel;數(shù)據(jù)導入導出

      中圖分類號:TP317 文獻標識碼:A 文章編號:1009-3044(2017)28-0008-02

      1 概述

      在日常的工作中,我們習慣通過Excel進行數(shù)據(jù)的統(tǒng)計、整理,所以在軟件開發(fā)中,對從數(shù)據(jù)庫中查詢的數(shù)據(jù)導出到Excel是一個必不可少的功能。

      2 NPOI的優(yōu)勢

      目前Excel導入導出有多種方法,而今天我們要研究的是通過一個叫做NPOI的組件,進行數(shù)據(jù)的導入導出。NPOI具有如下優(yōu)勢:

      1) 該插件可以免費使用。

      2) 許多Excel的特點都可以使用,比如說表格的樣式等。

      3) 有專業(yè)的團隊,提供優(yōu)秀的技術(shù)支持。

      4) xls, xlsx, docx等格式都可以操作。

      5) 面向接口編程,可以在命名空間中查看接口定義。

      6) 既能完成文件的導出,也能將Excel導入到系統(tǒng)中。

      7) 支持較早的.net Framework版本

      8) 有大量的成功案例

      9) 較多的技術(shù)學習資料。

      10) 你不需要在服務(wù)器上安裝微軟的Office,可以避免版權(quán)問題。

      11) 使用起來比Office PIA的API更加方便,更人性化。

      12) 你不用去花大力氣維護NPOI,NPOI Team會不斷更新、改善NPOI,絕對省成本。

      3 NPOI操作類說明

      3.1 工作本對象

      HSSFWorkbook表示工作本,它包含幾個重要的函數(shù)。函數(shù)一是CreateSheet,函數(shù)二GetSheetAt,函數(shù)三CreateCellStyle,函數(shù)四CreateFont,函數(shù)五Write(stream),以及HSSFWorkbook本身的無參構(gòu)造函數(shù)

      1) 新建一個工作本使用HSSFWorkbook的無參構(gòu)造函數(shù)。

      2) 指定sheet對象的創(chuàng)建用函數(shù)一,括號內(nèi)參數(shù)為對象索引。

      3) 想要得到指定索引的sheet對象,用函數(shù)二,括號內(nèi)參數(shù)為對象的索引。

      4) 函數(shù)四用來新建一個樣式對象,該樣式對象用于單元格。

      5) 新建字體對象實用函數(shù)五。

      6) 函數(shù)六是將workbook寫到流中。

      3.2 工作表對象

      HSSFSheet表示工作表對象,它有三個函數(shù)。函數(shù)一CreateRow、函數(shù)二GetRow、函數(shù)三AddMergeRegion、函數(shù)四SetColumnWidth

      1) 新建索引行用第一個函數(shù)。

      2) 獲得指定索引指向的行使用第二個函數(shù)。

      3) 第三個函數(shù)可以設(shè)置單元格的區(qū)域合并。

      4) 函數(shù)四可是設(shè)定列的寬度。

      3.3 行對象

      HSSFRow表示行對象,它有兩個函數(shù)和一個屬性。函數(shù)一CreateCell、函數(shù)二GetCell,一個屬性為HeightlnPoints。

      1) 新建索引行使用函數(shù)一。

      2) 獲得指定單元格使用函數(shù)二。

      3) 設(shè)定行的高度使用屬性。

      3.4 單元格對象

      HSSFCell是單元格對象,它有一個函數(shù)和兩個屬性。函數(shù)一為SetCellValue、屬性一***CellValue、屬性二CellStyle。

      1) 用函數(shù)一為單元格賦值。

      2) 屬性一***可以得到單元格的指定類型的內(nèi)容。

      3) 設(shè)定單元格的樣式使用屬性二。

      3.5 單元格樣式對象

      HSSFCellStyle是單元格樣式對象,函數(shù)一SetFont和屬性一Alignment。

      1) 字體樣式使用函數(shù)一設(shè)定

      2) 屬性一有三個參數(shù),數(shù)字1表示水平居左,數(shù)字2表示水平居中,數(shù)字3表表示水平居右。

      3.6 字體對象

      HSSFFont是字體對象。它有兩個屬性。屬性一FontHeightlnPoints、屬性二Boldweight。

      1) 屬性一可以用來設(shè)置字體大小。

      2) 屬性二可以改變字體的粗細。

      4 demo操作演示

      在VS中新建項目,選擇Visual C#——Windows——Windows窗體應(yīng)用程序,命名為Test,在Test中,添加——Windows窗體,命名為NPOITest,在NPOI官網(wǎng)(http://npoi.codeplex.com/)下載編譯過后的NPOI類庫,打開,將文件夾內(nèi)的全部內(nèi)容復(fù)制,將復(fù)制的內(nèi)容粘貼lib文件夾下(若無此文件夾,找到項目所在位置,在項目文件夾內(nèi)新建),如下圖:

      Test項目中添加引用,如下圖:

      在NPOITest窗體中,添加一個按鈕和一個DataGridView控件。效果如下:

      綁定數(shù)據(jù)源,此處為做演示,我用了某個管理系統(tǒng)的管理員列表的數(shù)據(jù)庫數(shù)據(jù)(大家做測試可以使用自己的數(shù)據(jù)庫),當窗加載時自動加載數(shù)據(jù),如圖4。

      5 導出按鈕后臺代碼截圖

      6 效果圖

      效果圖如圖5所示。

      7 結(jié)束語

      實現(xiàn)了從軟件系統(tǒng)中將數(shù)據(jù)庫中查詢的數(shù)據(jù)導出到Excel中,可在實際應(yīng)用中參考此方法實現(xiàn)數(shù)據(jù)導出,具有實用價值。

      參考文獻:

      [1] 魏文勝.Excel與SQLServer數(shù)據(jù)的相互轉(zhuǎn)換之方法[J].電腦知識與技術(shù),2007(10):892.

      [2] 張麗英.基于.NET的Excel數(shù)據(jù)批量導入SQL Server的設(shè)計與實現(xiàn)[J].南通紡織職業(yè)技術(shù)學院學報, 2012, 12(1):7-10.

      [3] 游向峰.基于ASP.NET的SQL與Excel數(shù)據(jù)互導的研究與實現(xiàn)[J].電腦知識與技術(shù), 2010(11):8953.endprint

      鹤峰县| 满洲里市| 怀仁县| 博野县| 思南县| 卫辉市| 淮阳县| 宜川县| 望江县| 大冶市| 武邑县| 鱼台县| 沧州市| 重庆市| 阿坝县| 永修县| 洪江市| 云龙县| 镇原县| 佛山市| 静海县| 瓦房店市| 盈江县| 玛纳斯县| 固安县| 樟树市| 新巴尔虎左旗| 乐清市| 桓台县| 英超| 丹巴县| 睢宁县| 甘孜| 白玉县| 平泉县| 嘉荫县| 阿拉善左旗| 行唐县| 诸城市| 云林县| 平陆县|