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);
            }

        }

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


    注意:这里因为是作为例子来弄的,对于一些界面的控制和一些对用户输入的控制都没有写出来。如果具体使用的话自己根据具体情况添加一些控件即可。
  • 相关阅读:
    malloc
    排序算法学习笔记(三)-- 快速排序
    排序算法学习笔记(二)-- 归并排序
    排序算法学习笔记(一)-- 冒泡排序,选择排序,插入排序,希尔排序
    网络协议笔记
    域名和IP地址并用的理由
    WebSocket协议介绍
    Ajax概念
    共享密钥加密、公开密钥加密及HTTPS混合加密
    HTTP缺点
  • 原文地址:https://www.cnblogs.com/juan/p/1428823.html
Copyright © 2011-2022 走看看