图片上传

来源:互联网 发布:化工行业发展现状知乎 编辑:程序博客网 时间:2024/05/20 23:36
 //上传图片并且返回数据库路径        public void UploadFile(FileUpload File1, string FilePath, ref string UploadReturn)        {            if (IsAllowedExtension(File1.PostedFile.InputStream))            {                //设置图片名字随机数                Random randobj = new Random();                string FileRandom = DateTime.Now.ToString("yyyyMMddhhmmss") + randobj.Next(9999);                //获取扩展名                int ExtIndex = File1.PostedFile.FileName.LastIndexOf(".");                string ExtName = File1.PostedFile.FileName.Substring(ExtIndex);                //设置存储图片相对路径地址                string ServerFilePath = FilePath + FileRandom + ExtName;                File1.PostedFile.SaveAs(ServerFilePath);                //返回存储数据库地址                UploadReturn = FileRandom + ExtName;                           }            else            {                //上传图片类型不合法!                UploadReturn = "";            }                 }        //判断扩展名        public bool IsAllowedExtension(System.IO.Stream fs)        {            bool ret = false;            System.IO.BinaryReader r = new System.IO.BinaryReader(fs);            string fileclass = "";            byte buffer;            try            {                buffer = r.ReadByte();                fileclass = buffer.ToString();                buffer = r.ReadByte();                fileclass += buffer.ToString();            }            catch            {                return false;            }            //r.Close();            //fs.Close();            /*文件扩展名说明              *4946/104116 txt              *7173        gif               *255216      jpg              *13780       png              *6677        bmp              *239187      txt,aspx,asp,sql              *208207      xls.doc.ppt              *6063        xml              *6033        htm,html              *4742        js              *8075        xlsx,zip,pptx,mmap,zip              *8297        rar                 *01          accdb,mdb              *7790        exe,dll                         *5666        psd               *255254      rdp               *10056       bt种子               *64101       bat               *4059        sgf              */            String[] fileType = { "255216", "7173", "6677", "13780" };            String[] fileExtName = { "jpg", "gif", "bmp", "png" };            String fExt = "";            for (int i = 0; i < fileType.Length; i++)            {                if (fileclass == fileType[i])                {                    fExt = fileExtName[i];                    ret = true;                    break;                }            }            //System.Web.HttpContext.Current.Response.Write(fExt);//可以在这里输出你不知道的文件类型的扩展名            return ret;        }

原创粉丝点击