怎样使用 HtmlInputFile 一次上传多个文件???急等!!!
我想使用 HtmlInputFile 一次上传多个文件,有多选功能,
怎样实现???或者有其他替代方法也行!!!

解决方案 »

  1.   

    http://community.csdn.net/Expert/topic/3303/3303178.xml?temp=.8308527
      

  2.   

    http://dotnet.aspx.cc/ShowDetail.aspx?id=58EA3515-36F2-4FD9-AC89-EAF49F59816C
      

  3.   

    你可以做成像163.com上传文件的效果。就是点击一个按钮,就在原来的基础上添加一个新的HtmlInputFile ,上传的时候一个一个地上传就行了。至于代码,你可以在csdn中查一下关于上传图片或者文件,有比较多这样的代码。
      

  4.   

    孟子的代码
    .aspx文件
    <%@ Page language="c#" Codebehind="UpLoad.aspx.cs" AutoEventWireup="false" Inherits="ejoy.Upload" %>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
    <HTML>
    <HEAD>
    <title>多文件上传</title>
    <script language="JavaScript">
        function addFile()
        {
         var str = '<INPUT type="file" size="50" NAME="File">'
         document.getElementById('MyFile').insertAdjacentHTML("beforeEnd",str)
        }
    </script>
    </HEAD>
    <body>
    <form id="form1" method="post" runat="server" enctype="multipart/form-data">
    <div align="center">
    <h3>多文件上传</h3>
    <P id="MyFile"><INPUT type="file" size="50" NAME="File"></P>
    <P>
    <input type="button" value="增加(Add)" onclick="addFile()"> <input onclick="this.form.reset()" type="button" value="重置(ReSet)">
    <asp:Button Runat="server" Text="开始上传" ID="UploadButton"></asp:Button>
    </P>
    <P>
    <asp:Label id="strStatus" runat="server" Font-Names="宋体" Font-Bold="True" Font-Size="9pt" Width="500px"
    BorderStyle="None" BorderColor="White"></asp:Label>
    </P>
    </div>
    </form>
    </body>
    </HTML>
    .cs文件
    private Boolean SaveImages()
    {
    ///'遍历File表单元素
    HttpFileCollection files  = HttpContext.Current.Request.Files; /// '状态信息
    System.Text.StringBuilder strMsg = new System.Text.StringBuilder();
    strMsg.Append("上传的文件分别是:<hr color=red>");
    try
    {
    for(int iFile = 0; iFile < files.Count; iFile++)
    {
    ///'检查文件扩展名字
    HttpPostedFile postedFile = files[iFile];
    string fileName, fileExtension;
    fileName = System.IO.Path.GetFileName(postedFile.FileName);
    if (fileName != "")
    {
    fileExtension = System.IO.Path.GetExtension(fileName);
    strMsg.Append("上传的文件类型:" + postedFile.ContentType.ToString() + "<br>");
    strMsg.Append("客户端文件地址:" + postedFile.FileName + "<br>");
    strMsg.Append("上传文件的文件名:" + fileName + "<br>");
    strMsg.Append("上传文件的扩展名:" + fileExtension + "<br><hr>");
    ///'可根据扩展名字的不同保存到不同的文件夹
    ///注意:可能要修改你的文件夹的匿名写入权限。
    postedFile.SaveAs(System.Web.HttpContext.Current.Request.MapPath("images/") + fileName);
    }
    }
    strStatus.Text = strMsg.ToString();
    return true;
    }
    catch(System.Exception Ex)
    {
    strStatus.Text = Ex.Message;
    return false;
    }
    }