上传图片之上传前判断文件格式与大小
最近工作中需要做一个上传图片的功能,既然上传的是图片,那么就应该在上传之前对文件进行一下验证,看看要上传的是不是图片文件。所以在上传之前要对所选文件的格式进行验证。上传图片时因为服务器资源有限,经常会规定图片最大不超过多少,所以在上传之前还要进行图片大小的一个验证。今天就让我们来做一下这两个验证。
验证文件类型,看看所选文件是不是图片:
//文件类型: 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>
代码很简单,只要在上传之前调用这两个方法,就可以对你要上传的文件进行一下简单的验证,不但适用于图片的上传,其他文件也行,只要根据你的需要修改一下配置文件即可。