婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁(yè) > 知識(shí)庫(kù) > 進(jìn)度條在.net導(dǎo)入Excel時(shí)的應(yīng)用實(shí)例

進(jìn)度條在.net導(dǎo)入Excel時(shí)的應(yīng)用實(shí)例

熱門標(biāo)簽:電銷語(yǔ)音機(jī)器人型號(hào)參數(shù) 百度地圖怎樣做地圖標(biāo)注 400電話如何申請(qǐng)取消 騰訊地圖標(biāo)注手機(jī) 昆明語(yǔ)音電銷機(jī)器人價(jià)格 征途美甲店地圖標(biāo)注 太原400電話上門辦理 柳州電銷機(jī)器人公司 浦發(fā)電話機(jī)器人提醒還款

本文實(shí)例講述了進(jìn)度條在.net導(dǎo)入Excel時(shí)的應(yīng)用,分享給大家供大家參考。具體實(shí)現(xiàn)方法如下:

在程序開(kāi)發(fā)過(guò)程中,往往會(huì)涉及到將Excel表格導(dǎo)入到數(shù)據(jù)庫(kù)中的需求,而當(dāng)excel表格內(nèi)容很多的時(shí)候,我們往往會(huì)很難去捕捉它的執(zhí)行過(guò)程進(jìn)度和一些錯(cuò)誤信息,此時(shí)我們便可以通過(guò)以下方法去解決這些難題,具體實(shí)現(xiàn)過(guò)程分析如下:

一、建立一個(gè)web應(yīng)用程序,在程序中首先創(chuàng)建一個(gè)html文件命名為ProgressBar,文件內(nèi)容如下:

復(fù)制代碼 代碼如下:
html>
head>
meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
title>/title>
script type="text/javascript">
    //開(kāi)始處理
    function BeginTrans(msg) {
        WriteText(msg);
    }
    //設(shè)置進(jìn)度條進(jìn)度
    function SetPorgressBar(msg, pos) {
        ProgressBar.style.width = pos + "%";
        WriteText(msg + " 已完成" + pos + "%");
    }
    //處理結(jié)束
    function EndTrans(msg) {
        if (msg == "")
            WriteText("完成。");
        else
            WriteText(msg);
    }
    //設(shè)置時(shí)間信息
    function SetTimeInfo(msg) {
        WriteText(msg);
    }
    // 更新文本顯示信息
    function WriteText(str) {
        var strTag = 'font face="Verdana, Arial, Helvetica" size="2" color="#ea9b02">B>' + str + '/B>/font>';
        document.getElementById("Msg2").innerHTML = strTag;
    }
/script>
/head>
body>
table align="center" style="height:100%">
    tr style="height:45%">td>/td>/tr>
    tr>
        td>
            div id="ProgressBarSide" style="width:300px; color:Silver;border-width:1px; border-style:Solid;">
                div id="ProgressBar" align="center" style="height:20px; width:0%; background-color:#316AC5;">/div>
            /div>
        /td>
        td>
        div id="Msg2" style="height:16px;">/div>
        /td>
    /tr>
    tr style="height:50%">td>/td>/tr>
/table>
/body>
/html>

二、創(chuàng)建一個(gè)aspx頁(yè)面,前后端代碼分別如下:
復(fù)制代碼 代碼如下:
//1.這里為了簡(jiǎn)便,我只寫(xiě)出了前端頁(yè)面中的body體部分供參考:
form id="forms" runat = "server">
table align="center" style="height:100%">
    tr style="height:45%">td>/td>/tr>
tr>
       td align="center" style="height: 24px; width: 100px;"> Excel文件/td>
       td style="height: 24px">
       asp:FileUpload ID="fuGlossaryXls" runat="server"/>
       asp:Label ID="Label2" runat="server" Font-Bold="True" ForeColor="Red" Text="不能為空"
                                                    Visible="False">/asp:Label>/td>
                                                    td>
        asp:Button ID="Button1" runat="server" CssClass="mybotton" Text="導(dǎo)入" Width="60px" onclick="Button1_Click"/>/td>
/tr>
/table>
/form>
//2.后端部分代碼如下:
 //這里是激發(fā)導(dǎo)入按鈕點(diǎn)擊事件
        protected void Button1_Click(object sender, EventArgs e)
        {
            string cfilename = this.fuGlossaryXls.FileName;//獲取準(zhǔn)備導(dǎo)入的文件名稱
            if (cfilename == "")
            {
                Label2.Visible = true;
                return;
            }
            else
            {
                Label2.Visible = false;
            }
            //////////////顯示進(jìn)度/////////////////////////////////////////////////////////////////////////////
            DateTime startTime = System.DateTime.Now;
            DateTime endTime = System.DateTime.Now;

            // 根據(jù) ProgressBar.htm 顯示進(jìn)度條界面
            string templateFileName = Path.Combine(Server.MapPath("."), "ProgressBar.htm");
            StreamReader reader = new StreamReader(@templateFileName, System.Text.Encoding.GetEncoding("gb2312"));
            string html = reader.ReadToEnd();
            reader.Close();
            Response.Write(html);
            Response.Flush();
            System.Threading.Thread.Sleep(1000);

            string jsBlock;
            // 處理完成
            jsBlock = "script>BeginTrans('正在加載數(shù)據(jù),請(qǐng)耐心等待...');/script>";
            Response.Write(jsBlock);
            Response.Flush();

             string fileName = fuGlossaryXls.PostedFile.FileName.Substring(fuGlossaryXls.PostedFile.FileName.LastIndexOf("\\") + 1);//獲取準(zhǔn)備導(dǎo)入文件的文件名
             string suffix = fileName.Substring(fileName.LastIndexOf(".") + 1);//獲取準(zhǔn)備導(dǎo)入文件的后綴名
            
             System.Threading.Thread.Sleep(200);

             int maxrows = 0;//用來(lái)記錄需要加載的數(shù)據(jù)總行數(shù)
             bool err = false;//用來(lái)記錄加載狀態(tài)
             int errcount = 0;//用來(lái)記錄加載錯(cuò)誤行數(shù)
             if (fuGlossaryXls.HasFile)//判斷當(dāng)前是否有選取文件
             {
                 if (suffix == "xlsx")
                 {
                     DataTable dt = ExcelImport(fileName);
                     for (int i = 0; i dt.Rows.Count; i++)
                     {
                         maxrows++;
                     }
                     //////////拓展////////////////////////////////////////////////////////
                     //DataView myView = new DataView(dt);
                     //myView.RowFilter = "name is not null";
                     //int t = myView.Count;//獲取滿足RowFilter 條件的數(shù)據(jù)行
                     //////////拓展////////////////////////////////////////////////////////
                     string sqlconnect = "Data Source=.;Initial Catalog=test;User ID=sa;Password=123456;";//本地?cái)?shù)據(jù)庫(kù)鏈接
                     SqlConnection conn = new SqlConnection(sqlconnect);
                     SqlTransaction myTrans = null;
                     try
                     {
                         SqlCommand cmd = new SqlCommand(null, conn);
                         conn.Open();
                         myTrans = conn.BeginTransaction();
                         cmd.Transaction = myTrans;
                         cmd.CommandText = "delete from test";
                         cmd.ExecuteNonQuery();//首先執(zhí)行清除表內(nèi)容操作
                         for (int j = 0; j dt.Rows.Count; j++)//循環(huán)向數(shù)據(jù)庫(kù)中插入excel數(shù)據(jù)
                         {
                             if (string.IsNullOrEmpty(dt.Rows[j][0].ToString()))
                             {
                                 jsBlock = "script>EndTrans('第" + j.ToString() + "行數(shù)據(jù)寫(xiě)入錯(cuò)誤。');/script>";
                                 Response.Write(jsBlock);
                                 Response.Flush();
                                 err = true;
                                 errcount++;
                             }
                             else
                             {
                                 cmd.CommandText = string.Format("insert into test values('{0}','{1}','{2}','{3}')", dt.Rows[j][0], dt.Rows[j][1], dt.Rows[j][2], dt.Rows[j][3]);
                                 cmd.ExecuteNonQuery();//逐行向表中插入數(shù)據(jù),注意字段的對(duì)應(yīng)
                             }
                             System.Threading.Thread.Sleep(1000);
                             float cposf = 0;
                             cposf = 100 * (j + 1) / maxrows;
                             int cpos = (int)cposf;
                             jsBlock = "script>SetPorgressBar('已加載到第" + (j + 1).ToString() + "條','" + cpos.ToString() + "');/script>";
                             Response.Write(jsBlock);
                             Response.Flush();
                         }
                         myTrans.Commit();//提交
                     }
                     catch (Exception ex)
                     {
                         myTrans.Rollback();//回滾
                         ClientScript.RegisterStartupScript(this.GetType(), "alert", "script>alert('" + ex.Message + "');/script>");
                     }
                     finally
                     {
                         conn.Dispose();
                         conn.Close();//關(guān)閉數(shù)據(jù)庫(kù)連接
                     }
                 }
                 else
                 {
                     ClientScript.RegisterStartupScript(GetType(), "", "alert('請(qǐng)選擇Excel文件!');", true);
                 }
             }
             else
             {
                 ClientScript.RegisterStartupScript(GetType(), "", "alert('請(qǐng)選擇要導(dǎo)入的Excel!');", true);
             }
             if (!err)//加載中并沒(méi)有出現(xiàn)錯(cuò)誤
             {
                 // 處理完成
                 jsBlock = "script>EndTrans('處理完成。');/script>";
                 Response.Write(jsBlock);
                 Response.Flush();
             }
             else
             {
                 jsBlock = "script>EndTrans('共有"+maxrows.ToString()+"條數(shù)據(jù)需要加載,其中 有"+errcount.ToString()+"條數(shù)據(jù)錄入錯(cuò)誤!');/script>";
                 Response.Write(jsBlock);
                 Response.Flush();
             }
             System.Threading.Thread.Sleep(1000);

             endTime = DateTime.Now;//錄入完成所用時(shí)間
             TimeSpan ts1 = new TimeSpan(startTime.Ticks);
             TimeSpan ts2 = new TimeSpan(endTime.Ticks);
             TimeSpan ts = ts2.Subtract(ts1).Duration(); //取開(kāi)始時(shí)間和結(jié)束時(shí)間兩個(gè)時(shí)間差的絕對(duì)值
             String spanTime = ts.Hours.ToString() + "小時(shí)" + ts.Minutes.ToString() + "分" + ts.Seconds.ToString() + "秒";
             jsBlock = "script>SetTimeInfo('加載完成,共用時(shí)" + spanTime + "');/script>";
             Response.Write(jsBlock);
             Response.Flush();

        }
        public DataTable ExcelImport(string fileName) //建立Excel表鏈接,返回Excel表數(shù)據(jù)
        {
                //EXCEL 的連接串
                string sConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;" +
                "Data Source=C:\\Documents and Settings\\Administrator\\桌面\\" + fileName + ";" +
                "Extended Properties='Excel 8.0;IMEX=1';";
                //string sConnectionString = "Microsoft.ACE.OLEDB.4.0;" +
                //"Data Source=C:\\Documents and Settings\\Administrator\\桌面\\" + fileName + ";" +
                //"Extended Properties='Excel 8.0;IMEX=1';";
                OleDbConnection objConn = new OleDbConnection(sConnectionString);//建立EXCEL的連接

//說(shuō)明:程序運(yùn)行到這里的時(shí)候有時(shí)會(huì)出錯(cuò)“未在本地計(jì)算機(jī)上注冊(cè)“Microsoft.ACE.OLEDB.12.0”提供程序”,此時(shí)大多數(shù)情況下我們只需要去http://download.microsoft.com/download/7/0/3/703ffbcb-dc0c-4e19-b0da-1463960fdcdb/AccessDatabaseEngine.exe下載一個(gè)AccessDatabaseEngine.exe安裝即可,原因在于你的office沒(méi)有安裝ACCESS組件
                objConn.Open();
                OleDbCommand objCmdSelect = new OleDbCommand("SELECT * FROM [Sheet1$]", objConn);
                OleDbDataAdapter objAdapter1 = new OleDbDataAdapter();
                objAdapter1.SelectCommand = objCmdSelect;
                DataSet objDataset1 = new DataSet();
                objAdapter1.Fill(objDataset1, "XLData");
                DataTable dt = objDataset1.Tables[0];
                //DataView myView = new DataView(dt);
                objConn.Close();//關(guān)閉EXCEL的連接
                return dt;
}

三、項(xiàng)目執(zhí)行過(guò)程中的效果圖展示如下:


 

 

 

 

 

 


這個(gè)是程序測(cè)試中使用的excel表格實(shí)例。

希望本文所述對(duì)大家的.net程序設(shè)計(jì)有所幫助。

您可能感興趣的文章:
  • Asp.Net 無(wú)刷新文件上傳并顯示進(jìn)度條的實(shí)現(xiàn)方法及思路
  • VB.NET進(jìn)度條的方法代碼
  • asp.net(c#)開(kāi)發(fā)中的文件上傳組件uploadify的使用方法(帶進(jìn)度條)
  • asp.net 在客戶端顯示服務(wù)器端任務(wù)處理進(jìn)度條的探討
  • asp.net 生成靜態(tài)頁(yè)時(shí)的進(jìn)度條顯示
  • 利用Asp.Net回調(diào)機(jī)制實(shí)現(xiàn)進(jìn)度條
  • asp.net web大文件上傳帶進(jìn)度條實(shí)例代碼
  • ASP.NET實(shí)現(xiàn)用圖片進(jìn)度條顯示投票結(jié)果
  • ASP.NET技巧:教你制做Web實(shí)時(shí)進(jìn)度條
  • asp.net導(dǎo)出excel數(shù)據(jù)的常見(jiàn)方法匯總
  • ASP.NET中上傳并讀取Excel文件數(shù)據(jù)示例
  • asp.net讀取excel文件的三種方法示例
  • .NET操作Excel實(shí)例分享

標(biāo)簽:白山 陽(yáng)泉 新疆 江蘇 德陽(yáng) 天門 張家界 蘭州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《進(jìn)度條在.net導(dǎo)入Excel時(shí)的應(yīng)用實(shí)例》,本文關(guān)鍵詞  進(jìn)度,條,在,.net,導(dǎo)入,Excel,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《進(jìn)度條在.net導(dǎo)入Excel時(shí)的應(yīng)用實(shí)例》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于進(jìn)度條在.net導(dǎo)入Excel時(shí)的應(yīng)用實(shí)例的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    精品国产一区二区在线观看| 九一九一国产精品| 欧美体内she精高潮| 成人av片在线观看| 成人性生交大合| 99久久久国产精品| 99视频国产精品| 成人激情校园春色| 91超碰这里只有精品国产| 99精品热视频| jlzzjlzz亚洲女人18| 东方欧美亚洲色图在线| 美女网站在线免费欧美精品| 男人操女人的视频在线观看欧美| 青青草原综合久久大伊人精品优势| 五月天欧美精品| 日韩avvvv在线播放| 日韩vs国产vs欧美| 欧美一区二区观看视频| 91精选在线观看| 欧美不卡在线视频| 中文字幕高清一区| 国产精品国产馆在线真实露脸| 中文字幕国产一区| 欧美日韩电影在线| 日韩女优电影在线观看| 久久精品一区四区| 国产精品久久久久久久蜜臀| 亚洲精品乱码久久久久| 婷婷亚洲久悠悠色悠在线播放| 久久成人麻豆午夜电影| 蜜桃av一区二区| www.成人在线| 精品欧美久久久| 性欧美疯狂xxxxbbbb| 成人黄色小视频在线观看| 91精品麻豆日日躁夜夜躁| 自拍偷拍欧美激情| 国产成人免费视频网站高清观看视频| 欧美电影在线免费观看| 亚洲日本在线a| 国产激情视频一区二区在线观看| 3751色影院一区二区三区| 最新国产の精品合集bt伙计| 精品在线视频一区| 777久久久精品| 亚洲影视在线播放| 91偷拍与自偷拍精品| 国产日韩高清在线| 狠狠色丁香久久婷婷综合_中| 欧美日韩小视频| 一级特黄大欧美久久久| 91网站最新网址| 国产精品国产a| 国产精品一区二区视频| 欧美一个色资源| 天堂va蜜桃一区二区三区| 欧美私人免费视频| 亚洲国产日产av| 欧美在线播放高清精品| 亚洲国产色一区| 制服.丝袜.亚洲.另类.中文| 亚洲国产精品麻豆| 欧美优质美女网站| 亚洲男人的天堂在线观看| 不卡视频在线看| 亚洲人成在线播放网站岛国| 91网址在线看| 一区二区三区欧美视频| 91麻豆蜜桃一区二区三区| 亚洲欧美日韩一区| 日本丶国产丶欧美色综合| 亚洲综合区在线| 欧美日韩亚州综合| 蜜桃av一区二区三区| 精品久久五月天| 国产精品911| 国产精品国产三级国产| 色偷偷久久人人79超碰人人澡 | 国产黄色成人av| 欧美经典一区二区| av中文字幕亚洲| 一区二区三区**美女毛片| 欧美亚洲另类激情小说| 日本成人在线视频网站| 久久日韩粉嫩一区二区三区 | 午夜在线成人av| 日韩一级在线观看| 国产盗摄精品一区二区三区在线| 自拍视频在线观看一区二区| 欧美日韩成人一区| 国产乱码精品一区二区三区忘忧草 | 精品盗摄一区二区三区| 成人一区二区视频| 欧美一区二区在线不卡| 国模冰冰炮一区二区| 日韩美女久久久| 欧美二区乱c少妇| 丁香六月综合激情| 亚洲一区在线观看免费| 精品日韩av一区二区| aaa国产一区| 男女男精品网站| 国产精品青草综合久久久久99| 在线精品亚洲一区二区不卡| 精品一区二区综合| 亚洲综合一二区| 久久综合五月天婷婷伊人| 日本韩国视频一区二区| 免费成人在线观看| 国产精品理论在线观看| 欧美一区二区三区四区在线观看| 亚洲福利视频导航| www精品美女久久久tv| 国产目拍亚洲精品99久久精品| 91麻豆精品久久久久蜜臀| 亚洲欧洲综合另类| 国产成人精品一区二区三区四区| 国产在线精品一区二区夜色| www.久久久久久久久| 亚洲精品免费在线观看| 国产女主播视频一区二区| 91精品在线观看入口| 色综合久久综合网97色综合 | 午夜精品久久久久久久蜜桃app| 欧美成人a视频| 久久久久久久综合狠狠综合| 欧美日韩精品专区| 精品在线你懂的| 日韩国产一区二| 夜色激情一区二区| 欧美精品在线观看一区二区| 久久久蜜桃精品| 久久99国产乱子伦精品免费| 最新国产成人在线观看| 国产女人aaa级久久久级| 激情久久五月天| 亚洲日本韩国一区| 91成人免费在线视频| 精品一区二区三区日韩| 欧美经典一区二区| 亚洲一二三四在线| 国产欧美精品一区二区色综合| 色屁屁一区二区| 激情国产一区二区| 亚洲成人一区在线| 亚洲婷婷综合色高清在线| 精品美女被调教视频大全网站| 成人蜜臀av电影| 久久精品一区二区三区四区| 成人午夜激情在线| 国产乱理伦片在线观看夜一区| 男女激情视频一区| 中文字幕制服丝袜成人av | 一区二区三区四区在线播放 | 欧美成人伊人久久综合网| 国内一区二区在线| 精品综合久久久久久8888| 日本网站在线观看一区二区三区 | 亚洲免费伊人电影| 亚洲国产成人自拍| 国产精品成人午夜| 国产精品欧美久久久久一区二区| 国产无一区二区| 国产精品国产精品国产专区不蜜| 欧美日韩久久一区| 欧美一卡二卡三卡四卡| 久久久久久久免费视频了| 欧美激情一区在线| 亚洲精品videosex极品| 亚洲高清一区二区三区| 蜜臀久久99精品久久久久久9 | 51精品国自产在线| 欧美成人精品1314www| 精品国产一区二区三区久久影院 | 在线观看亚洲一区| 欧美一级黄色大片| 国产欧美视频在线观看| 1024成人网| 欧美激情一区在线| 午夜视频一区在线观看| 国产高清成人在线| 欧美一区二区三区四区久久| 中文字幕在线一区| 国产成人免费av在线| 91在线精品秘密一区二区| 日韩一级片网站| 丝袜美腿亚洲综合| 91丝袜国产在线播放| 久久久久久久电影| 美女脱光内衣内裤视频久久影院| 一本色道久久综合亚洲精品按摩| 精品日韩成人av| 免费看日韩a级影片| 欧美一区二区三区系列电影| 亚洲精品免费在线播放| 欧美日韩国产天堂| 亚洲一区日韩精品中文字幕| 成人手机在线视频| 久久久午夜电影|