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

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

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

  

复制代码 代码如下:

  //文件类型:

  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>

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