卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

通過C代碼實現(xiàn)將SQL數(shù)據(jù)導(dǎo)入Excel

對于從Sqlserver中的數(shù)據(jù)導(dǎo)入到Excel中,雖然Sqlserver已經(jīng)給了較為簡單的方式,通過交互式的對話框形式來實現(xiàn);但是,有時這種方式對于一個項目而言,并不便利,而且我們都不希望功能的實現(xiàn)

對于從Sqlserver中的數(shù)據(jù)導(dǎo)入到Excel中,雖然Sqlserver已經(jīng)給了較為簡單的方式,通過交互式的對話框形式來實現(xiàn);但是,有時這種方式對于一個項目而言,并不便利,而且我們都不希望功能的實現(xiàn)離開了軟件程序。因此,在此給大家介紹一種C調(diào)用NPOI進行Excel導(dǎo)出的代碼實現(xiàn)方式。

1. 構(gòu)建查詢界面UI

使用VS2010建構(gòu)查詢界面,在此筆者所測試的是Winform程序,一個往來賬查詢的功能。

2. 利用C代碼獲取SQL數(shù)據(jù)

利用C代碼獲取SQL數(shù)據(jù),并將查詢出來的數(shù)據(jù)保存到數(shù)據(jù)表DataTable中。

private void btnRefresh_Click(object sender, EventArgs e)
{
    // 查詢條件
    string condition  "";
    if (txtKjkm.Text ! "")
        condition   "AND [kmdm] like '%"   ()   "%';";
    if (txtXmmc.Text ! "")
        condition   "AND [xmdm] like '%"   ()   "%';";
    VouchOp dzd  new VouchOp();
    dt  (condition, conditionQc);
}

3. 設(shè)定dataGridView的數(shù)據(jù)源

將所查詢出來的DataTable數(shù)據(jù)表設(shè)定為dataGridView的數(shù)據(jù)源。

  dt;

4. 調(diào)用NPOI將數(shù)據(jù)導(dǎo)入到Excel中

調(diào)用NPOI控件,并將數(shù)據(jù)導(dǎo)入到Excel中。

private void btnExcel_Click(object sender, EventArgs e)
{
    (dataGridView1);
}

5. 指定文件存儲路徑

點擊生成EXCEL,跳出存儲對話框,接下來我們做的就是先找到存放這個文件的路徑。

static void WriteToFile()
{
    SaveFileDialog saveFileDialog  new SaveFileDialog();
      "Execl files (*.xls)|*.xls";
      0;
      true;
      true;
    saveFileDialog.Title  "Excel文件另存為...";
    if (() ! DialogResult.OK)
        return;
    string myExcel  ;
    FileStream file  new FileStream(myExcel, );
    hssfworkbook.Write(file);
    ();
}

6. 打開所存儲的EXCEL文件

即是從SQL數(shù)據(jù)中導(dǎo)入的內(nèi)容。

7. NPOI控件

NPOI,顧名思義,就是POI的.NET版本。那POI又是什么呢?POI是一套用Java寫成的庫,能夠幫助開發(fā)者在沒有安裝微軟Office的情況下讀寫Office 97-2003的文件,支持的文件格式包括xls、doc、ppt等。筆者以上所用的npoi版本為1.2.5版本(部分自定義修改了),對于具體npoi相關(guān)資料可以從網(wǎng)上查找獲得。

標(biāo)簽: