您的位置:首页 > 编程语言 > ASP

实现ASP.NET多文件上传示例(不用第三方插件)

2012-08-14 21:04 621 查看
不用第三方插件,实现多文件上传:
aspx文件关键代码:

[html]
view plaincopyprint?

<form id="form1" runat="server">  
请选择上传的文件:<br />  
<asp:FileUpload ID="FileUpload1" runat="server" /><br />  
<br />  
<asp:FileUpload ID="FileUpload2" runat="server" /><br />  
<br />  
<asp:FileUpload ID="FileUpload3" runat="server" /><br />  
<br />  
<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />  
<asp:Literal ID="LiteralScript" runat="server" EnableViewState="false"></asp:Literal>  
</form>  

<form id="form1" runat="server">
请选择上传的文件:<br />
<asp:FileUpload ID="FileUpload1" runat="server" /><br />
<br />
<asp:FileUpload ID="FileUpload2" runat="server" /><br />
<br />
<asp:FileUpload ID="FileUpload3" runat="server" /><br />
<br />
<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />
<asp:Literal ID="LiteralScript" runat="server" EnableViewState="false"></asp:Literal>
</form>


aspx.cs文件关键代码:

[csharp]
view plaincopyprint?

protected void Button1_Click(object sender, EventArgs e)  
{  
    HttpFileCollection files = Request.Files;  
    for (int i = 0; i < files.Count; i++)  
    {  
        if (files[i].ContentLength == 0)  
        {  
            LiteralScript.Text = "<script>alert('请选择文件!')</script>";  
            return;  
        }  
    }  
    for (int i = 0; i < files.Count; i++)  
    {  
        if (files[i].ContentLength > 0)  
            files[i].SaveAs(Server.MapPath("~/") + Path.GetFileName(files[i].FileName));  
    }  
}  

protected void Button1_Click(object sender, EventArgs e)
{
HttpFileCollection files = Request.Files;
for (int i = 0; i < files.Count; i++)
{
if (files[i].ContentLength == 0)
{
LiteralScript.Text = "<script>alert('请选择文件!')</script>";
return;
}
}
for (int i = 0; i < files.Count; i++)
{
if (files[i].ContentLength > 0)
files[i].SaveAs(Server.MapPath("~/") + Path.GetFileName(files[i].FileName));
}
}


示例用的是多个FileUpload控件,也可以使用HtmlInputFile控件或直接使用静态file表单元素。
 
 
 
string[] str = new string[4];

//获取HttpFileCollection对象

HttpFileCollection fileList = System.Web.HttpContext.Current.Request.Files;

for (int i = 0; i < str.length; i++)

{

System.Web.HttpPostedFile postedFile = fileList[i];

string fileName = postedFile.FileName;

if (fileName != string.Empty)

{

string size = postedFile.ContentLength.ToString();   

if (int.Parse(size) >= 332422812) //判断上传片的大小

{

return ;

}

else

{

string Imagetype = fileName.Substring(fileName.LastIndexOf("."));    //图片类型

if (Imagetype == ".jpg" || Imagetype == ".bmp" || Imagetype == ".gif" || Imagetype == ".png" || Imagetype == ".jpeg")

{

string root = Server.MapPath("~/images/uploads/Media/bigImg/");  //图片保存路径

string proName = "";

string proNameNew = "";

string filePathOld = "";       //原图片路径

string filePathNew = "";      //新图片路径

filePathOld = root + strl[i];   

if (File.Exists(filePathOld))

{

proNameNew = DateTime.Now.ToString("yyyyMMddhhmmss") + strl[i];

File.Move(filePathOld, (root + proNameNew));      //将原图片重新命名

}

proName = "My"+Imagetype;        //新图片名

filePathNew = root + pro
b5e8
Name;

postedFile.SaveAs(filePathNew);

strl[i] = proName;       //存储图片新名称

}

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐