进度条在.net导入Excel时的应用实例

在程序开发过程中,往往会涉及到将Excel表格导入到数据库中的需求,而当excel表格内容很多的时候,我们往往会很难去捕捉它的执行过程进度和一些错误信息,此时我们便可以通过以下方法去解决这些难题,具体实现过程分析如下:

一、建立一个web应用程序,在程序中首先创建一个html文件命名为ProgressBar,文件内容如下:

复制代码 代码如下:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<script type="text/javascript">
    //开始处理
    function BeginTrans(msg) {
        WriteText(msg);
    }
    //设置进度条进度
    function SetPorgressBar(msg, pos) {
        ProgressBar.style.width = pos + "%";
        WriteText(msg + " 已完成" + pos + "%");
    }
    //处理结束
    function EndTrans(msg) {
        if (msg == "")
            WriteText("完成。");
        else
            WriteText(msg);
    }
    //设置时间信息
    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>
    <tr><td></td></tr>
    <tr>
        <td>
            <div>
                <div></div>
            </div>
        </td>
        <td>
        <div></div>
        </td>
    </tr>
    <tr><td></td></tr>
</table>
</body>
</html>


二、创建一个aspx页面,前后端代码分别如下:

复制代码 代码如下:

//1.这里为了简便,我只写出了前端页面中的body体部分供参考:
<form runat = "server">
<table>
    <tr><td></td></tr>
<tr>
       <td> Excel文件</td>
       <td>
       <asp:FileUpload runat="server"/>
       <asp:Label runat="server" Font-Bold="True" ForeColor="Red" Text="不能为空"
                                                    Visible="False"></asp:Label></td>
                                                    <td>
        <asp:Button runat="server" CssClass="mybotton" Text="导入"/></td>
</tr>
</table>
</form>
//2.后端部分代码如下:
 //这里是激发导入按钮点击事件
        protected void Button1_Click(object sender, EventArgs e)
        {
            string cfilename = this.fuGlossaryXls.FileName;//获取准备导入的文件名称
            if (cfilename == "")
            {
                Label2.Visible = true;
                return;
            }
            else
            {
                Label2.Visible = false;
            }
            //////////////显示进度/////////////////////////////////////////////////////////////////////////////
            DateTime startTime = System.DateTime.Now;
            DateTime endTime = System.DateTime.Now;

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wjzgsy.html