zoukankan      html  css  js  c++  java
  • 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);

    }

  • 相关阅读:
    day77 vue对象提供的属性功能
    day76 作业
    day76 vue框架入门
    day75 bbs项目☞后台管理+修改头像
    day74 bbs项目☞点赞与评论
    day73 bbs项目☞基本功能实现
    day72 bbs项目☞登录注册
    练习题00
    雇1个人工作7天,你有1根金条可以分成7份,只能切2刀,如何保证每天都得到1份金条
    Python正课143 —— DRF 进阶4 权限、频率、过滤、排序
  • 原文地址:https://www.cnblogs.com/zhangsongshan/p/2352616.html
Copyright © 2011-2022 走看看