zoukankan      html  css  js  c++  java
  • 使用FileUpload实现多个文件同时上传

     最近公司做东西要求上传的地方有点多,所以现在想写点关于上传的东西。
            最近在网上看到一个朋友的视频教程,使用FileUpload实现多个文件同时上传的例子,感觉他的方法比较简单,所以就想写下来供需要的朋友使用。下面就是主要的界面,大家可以参考一下。下面我们来解释他的实现方法:

    首先我们看一下界面,开始界面上有个Panel1,里面有个FileUpload控件,然后在Panel1外面有个TextBox控件,一个Button按钮,用来实现增加FileUpload控件的,还有一个Button按钮是用来实现上传功能的。看一些界面源文件:
    <asp:Panel ID="Panel1" runat="server" Height="50px" Width="302px">
                
    <asp:FileUpload ID="ful" runat="server" />
                
    <input id="File1" runat="server" type="file" /></asp:Panel>
        
        
    </div>
            
    <asp:TextBox ID="textSum" runat="server" Width="63px"></asp:TextBox>
            
    <asp:Button ID="AddBtn" runat="server" OnClick="AddBtn_Click" Text="增加" />
            
    <asp:Button ID="FileUploadBtn" runat="server" OnClick="FileUploadBtn_Click" Text="全部上传" />
    界面设计好以后看一下后台的代码怎么写的,其实后台的代码是很简单的,先看看怎么生成多的FileUpload控件的。
    protected void AddBtn_Click(object sender, EventArgs e)
        
    {
            System.Web.UI.WebControls.FileUpload fu;
            
    int sum =Convert.ToInt32(textSum.Text);
            
    for (int i = 0; i < sum; i++)
            
    {
                fu 
    = new System.Web.UI.WebControls.FileUpload();
                fu.ID 
    = "fu_" + i.ToString();
                
    //fu.file
                Panel1.Controls.Add(fu);
            }

        }
    控件生成以后就要实现上传的功能了,上传的功能也是很简单的,大家看一下:
    protected void FileUploadBtn_Click(object sender, EventArgs e)
        
    {
            
    string f_name, f_size, f_type;
            HttpFileCollection hfc 
    = Request.Files;
            
    for (int i = 0; i < hfc.Count; i++)
            
    {
                HttpPostedFile hpf 
    = hfc[i];
                f_name 
    = hpf.FileName;
                f_size 
    = hpf.ContentLength.ToString();
                f_type 
    = hpf.ContentType;
                
    string filename = System.IO.Path.GetFileName(f_name);
                hpf.SaveAs(
    @"E:\fileupload\"+filename);
                Response.Write(
    "<br>" + f_name + "<br>" + f_size + "<br>" + f_type);
            }

        }

    好了,这样就可以实现多个文件同时上传了。


    注意:这里因为是作为例子来弄的,对于一些界面的控制和一些对用户输入的控制都没有写出来。如果具体使用的话自己根据具体情况添加一些控件即可。
  • 相关阅读:
    cf D. Vessels
    cf C. Hamburgers
    zoj 3758 Singles' Day
    zoj 3777 Problem Arrangement
    zoj 3778 Talented Chef
    hdu 5087 Revenge of LIS II
    zoj 3785 What day is that day?
    zoj 3787 Access System
    判断给定图是否存在合法拓扑排序
    树-堆结构练习——合并果子之哈夫曼树
  • 原文地址:https://www.cnblogs.com/juan/p/1428823.html
Copyright © 2011-2022 走看看