最近工作中需要做一個上傳圖片的功能,既然上傳的是圖片,那麼就應該在上傳之前對文件進行一下驗證,看看要上傳的是不是圖片文件。所以在上傳之前要對所選文件的格式進行驗證。上傳圖片時因為服務器資源有限,經常會規定圖片最大不超過多少,所以在上傳之前還要進行圖片大小的一個驗證。今天就讓我們來做一下這兩個驗證。
驗證文件類型,看看所選文件是不是圖片:
復制代碼 代碼如下:
//文件類型:
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>
代碼很簡單,只要在上傳之前調用這兩個方法,就可以對你要上傳的文件進行一下簡單的驗證,不但適用於圖片的上傳,其他文件也行,只要根據你的需要修改一下配置文件即可。