• asp.net上传文件


    public class upFiles
    {
        private string path = null;//文件的路径
        private string fileType = null;//文件上传类型
        private int sizes = 0;//大小
        /// <summary>
        /// 初始化变量
        /// </summary>
        public upFiles()
        {
            path = @"Admin\uploadfile\"; //上传路径 @表示转义\没有错误
            fileType = "jpg|gif|bmp|png|rar|zip";//上传文件规定的类型
            sizes = 200; //传文件的大小,默认200KB
        }

        /// <summary>
        /// 设置上传路径,如:uploadfile\
        /// </summary>
        public string Path
        {
            set
            {
                path = @"\" + value + @"\";
            }
        }

        /// <summary>
        /// 设置上传文件大小,单位为KB
        /// </summary>
        public int Sizes
        {
            set
            {
                sizes = value;
            }
            get
            {
                return sizes;
            }
        }

        /// <summary>
        /// 设置上传文件的类型,如:jpg|gif|bmp
        /// </summary>
        public string FileType
        {
            set
            {
                fileType = value;
            }
        }

        /// <summary>
        /// 上传图片
        /// </summary>
        /// <param name="name">上传控件名称</param>
        /// <param name="creatDirectory">true则以当前时间创建文件夹,false则为设置的文件夹</param>
        /// <returns>返回上传图片的相对路径</returns>
        public string fileSaveAs(System.Web.UI.WebControls.FileUpload name, bool creatDirectory)
        {

            try
            {
                string filePath = null;
                //以当前时间修改图片的名字或创建文件夹的名字
                string modifyFileName = DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString() + DateTime.Now.Hour.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Second.ToString() + DateTime.Now.Millisecond.ToString();
                //获得站点的物理路径
                string uploadFilePath = null;
                //如果为true则以当前时间创建文件夹,否则为设置的文件夹
                if (creatDirectory)
                {
                    uploadFilePath = System.Web.HttpContext.Current.Server.MapPath(".") + @"\" + DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString() + @"\";
                }
                else
                {
                    //uploadFilePath = System.Web.HttpContext.Current.Server.MapPath(".") + path;
                    uploadFilePath = System.Web.HttpContext.Current.Server.MapPath("../uploadfile/");
                }
                //获得文件的上传的路径
                string sourcePath = name.FileName.Trim();
                //判断上传文件是否为空
                if (sourcePath == "" || sourcePath == null)
                {
                    message("您没有上传数据呀,是不是搞错了呀!");
                    return null;
                }
                //获得文件扩展名
                string tFileType = sourcePath.Substring(sourcePath.LastIndexOf(".") + 1);
                //获得上传文件的大小
                long strLen = name.FileContent.Length;;//.ContentLength;
                //分解允许上传文件的格式
                string[] temp = fileType.Split('|');
                //设置上传的文件是否是允许的格式
                bool flag = false;
                //判断上传文件大小
                if (strLen / 1024 >= sizes)
                {

                    message("上传的图片不能大于" + sizes + "KB");
                    return null;
                }
                //判断上传的文件是否是允许的格式
                foreach (string data in temp)
                {
                    if (data == tFileType)
                    {
                        flag = true;
                        break;
                    }
                }
                //如果为真允许上传,为假则不允许上传
                if (!flag)
                {
                    message("目前本系统支持的格式为:" + fileType);
                    return null;
                }
                System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(uploadFilePath);
                //判断文件夹否存在,不存在则创建
                if (!dir.Exists)
                {
                    message("程序设置的文件存放目录不存在!");
                    return null;
                    //下面这一句可以创建一个文件夹,但为了安全,设置为不创建文件夹
                    //dir.Create();
                }
                filePath = uploadFilePath + modifyFileName + "." + tFileType;
                name.SaveAs(filePath);
                filePath = path + modifyFileName + "." + tFileType;
                //上传前使用:\目录\文件名 上传后,在网站上使用:/目录/文件名
                filePath = filePath.Replace('\\', '/');
                return filePath;

            }
            catch
            {
                //异常
                message("出现未知错误!");
                return null;
            }
        }

        public static void message(string msg, string url)
        {
            System.Web.HttpContext.Current.Response.Write("<script language=javascript>alert('" + msg + "');window.location='" + url + "'</script>");
        }

        public static void message(string msg)
        {
            System.Web.HttpContext.Current.Response.Write("<script language=javascript>alert('" + msg + "');</script>");
        }
    }

  • 相关阅读:
    FICOON
    Mezzanine
    BIOS
    基于ftp的自动传输脚本
    主机存活检测、端口检测
    基于ssh的服务器基础信息搜集
    Spring Boot aop使用指南
    Java动态代理
    Spring中的声明式事务管理
    Spring Boot注解使用指南
  • 原文地址:https://www.cnblogs.com/yzenet/p/2310192.html
Copyright © 2020-2023  润新知