欢迎来到天天文库
浏览记录
ID:15512162
大小:56.00 KB
页数:19页
时间:2018-08-03
《asp.net 图片上传的一个类库的源码》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、asp.Net图片上传的一个类库的源码一般情况.图片是不直接存到数据库的.而只是存了图片的名称.存放图片的文件夹路径一般是固定的.所以这时你只需要从数据库拿出图片名称.直接在页面中这么写就OK了:">在上传的时候.首先当然是要判断上传文件是不是图片了.不建议去判断文件的后缀名.用这个方法:if(this.myfile.PostedFile.ContentType.ToString().ToLower().IndexOf("image")<0){//
2、非图片文件}在对图片删除的时候.先去数据库里删除相关图片信息.然后再用:System.IO.File.Delete(@"C:cccdddeee.gif");这里一定要用绝对路径.上传图片到服务器上是网站开发中很常用的功能,它的实现也很简单,可以新建一个上传类UpLoadAndSaveImage,这个类中包含三个函数UpLoadAndSave,CreateFilePath,SaveToServer。使用时调用下面的UpLoadAndSave函数就可以了,该函数第一个参数为要上传的图片数据,第二个参数为
3、上传的虚拟路径(相对路径),第三个参数为上传图片的格式,第四个参数为上传的物理路径。在这个函数中调用CreateFilePath函数产生随机的图片名称,最后再调用SaveToServer保存图片到服务器上。publicstringUpLoadAndSave(byte[]data,refstringvirPath,stringfext,stringphysicPath){//返回文件物理地址,修改虚拟地址if(data==null
4、
5、virPath==null
6、
7、fext==null
8、
9、physicPath
10、==""){thrownewException("非法参数");}stringrtnValue=SaveToServer(data,fext,physicPath,data.Length);virPath+=rtnValue;physicPath+=rtnValue;returnphysicPath;}privatestringCreateFilePath(stringfext){stringfilePath="";Randomrd=newRandom();filePath+=DateTime.Now.Y
11、ear.ToString("0000");filePath+=DateTime.Now.Month.ToString("00");filePath+=DateTime.Now.Date.ToString("00");filePath+=DateTime.Now.Hour.ToString("00");filePath+=DateTime.Now.Minute.ToString("00");filePath+=DateTime.Now.Second.ToString("00");filePath+=Date
12、Time.Now.Millisecond.ToString("00");filePath+=rd.Next(99).ToString("00");filePath+="."+fext;returnfilePath;}privatestringSaveToServer(byte[]data,stringfext,stringphysicPath,intfileLen){stringfilePath=CreateFilePath(fext);stringrtnValue=filePath;filePath=f
13、ilePath.Insert(0,@physicPath);if(File.Exists(filePath)){filePath=CreateFilePath(fext);rtnValue=filePath;}FileStreamfs=newFileStream(filePath,FileMode.CreateNew);fs.Write(data,0,fileLen);fs.Close();returnrtnValue;}//在其他页面调用该上传类,见下面的实例:UpLoadAndSaveImageupl
14、oad=newUpLoadAndSaveImage();try{stringvirPath="UploadFiles/";stringphysicPath=Server.MapPath(Request.ApplicationPath+"/"+"UploadFiles/");stringfext=this.File1.PostedFile.FileName;if(fext.Length==0){return;}fext=Path
此文档下载收益归作者所有