ASP.NET文件上传,为每个用户建立一个上传目录

文件上传界面既可以用Html的input file控件,又可以用FileUpload控件,只要将Html的input file控件加上runat="server",就会发现两者的功能完全是一模一样,上传的代码是共用的,不需要做任何改变。我想微软在将Html控件将成标准控件时应该只是多加了runat="server"吧。放入上述两者的任一控件后,添加一个标准的Button按钮(Html按钮也行,不过需要加上runat="server"),双击Button按钮,产生点击事件。在点击事件中写入以下代码:

首先检查是否已经选了文件

if (this.myFile.PostedFile != null)

{

检查文件根目录是否存在,不存在就要创建

if (!System.IO.Directory.Exists(Server.MapPath("~")+@"/photoes"))
{
      System.IO.Directory.CreateDirectory(Server.MapPath("~")+@"/photoes");
}

此处Server.MapPath("~")用来表示项目根目录的物理路径。

 

接下来创建用户文件夹,根据用户ID创建

if(!System.IO.Directory.Exists(Server.MapPath("~")+@"/photoes/"+userID))

{

     System.IO.Directory.CreateDirectory(Server.MapPath("~")+@"/photoes/"+userID)

}

string orignalName = this.myFile2.PostedFile.FileName;//获取客户机上传文件的路径

int lastdotlocation = orignalName.LastIndexOf(".");

string extendName = orignalName.Substring(lastdotlocation);//获取扩展名

 if (extendName != ".gif" && extendName != ".jpg" && extendName != ".jpeg" && extendName != ".png")
{
       Response.Write("Wrong format");
       Response.End();

}//检查文件格式

string newName = DateTime.Now.Millisecond.ToString() + "_" + myFile2.PostedFile.ContentLength.ToString() + extendName;//对文件进行重命名

myFile.PostedFile.SaveAs(Server.MapPath("~") + @"/photoes/" +userID+@"/"+ newName);

}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值