上传图片前判断文件格式与大小验证文件是不是图片

时间:2022-04-07 18:57:20

最近工作中需要做一个上传图片的功能,既然上传的是图片,那么就应该在上传之前对文件进行一下验证,看看要上传的是不是图片文件。所以在上传之前要对所选文件的格式进行验证。上传图片时因为服务器资源有限,经常会规定图片最大不超过多少,所以在上传之前还要进行图片大小的一个验证。今天就让我们来做一下这两个验证。 

验证文件类型,看看所选文件是不是图片: 

复制代码代码如下:


//文件类型: 
protected bool IsAllowableFileType(string FileName) 

//从web.config读取判断文件类型限制 
string stringstrFileTypeLimit; 
stringstrFileTypeLimit = ConfigurationManager.AppSettings["PicTureTye"].ToString(); 
//当前文件扩展名是否包含在这个字符串中 
Response.Write(FileName + stringstrFileTypeLimit); 
if (stringstrFileTypeLimit.IndexOf(FileName.ToLower()) != -1) 

return true; 

else 

return false; 


验证文件大小,看看文件有没有超过最大限制: 

复制代码代码如下:


//文件大小 
public bool IsAllowableFileSize(long FileContentLength) 

//从web.config读取判断文件大小的限制 
Int32 doubleiFileSizeLimit; 
doubleiFileSizeLimit = Convert.ToInt32(ConfigurationManager.AppSettings["FileSizeLimit"]); 

//判断文件是否超出了限制 
if (doubleiFileSizeLimit > FileContentLength) 

return true; 

else 

return false; 


一下是配置文件的设置,里面规定了上传文件的扩展名和大小。 

复制代码代码如下:


<appSettings> 
<add key="PicTureTye" value=".jpg|.gif|.png|.bmp|.jpeg|"/> 
<add key="FileSizeLimit" value="512000"/> 
</appSettings> 


代码很简单,只要在上传之前调用这两个方法,就可以对你要上传的文件进行一下简单的验证,不但适用于图片的上传,其他文件也行,只要根据你的需要修改一下配置文件即可。