最近工作中需要做一個上傳圖片的功能,既然上傳的是圖片,那么就應(yīng)該在上傳之前對文件進(jìn)行一下驗證,看看要上傳的是不是圖片文件。所以在上傳之前要對所選文件的格式進(jìn)行驗證。上傳圖片時因為服務(wù)器資源有限,經(jīng)常會規(guī)定圖片最大不超過多少,所以在上傳之前還要進(jìn)行圖片大小的一個驗證。今天就讓我們來做一下這兩個驗證。
驗證文件類型,看看所選文件是不是圖片:
復(fù)制代碼 代碼如下:
//文件類型:
protected bool IsAllowableFileType(string FileName)
{
//從web.config讀取判斷文件類型限制
string stringstrFileTypeLimit;
stringstrFileTypeLimit = ConfigurationManager.AppSettings["PicTureTye"].ToString();
//當(dāng)前文件擴(kuò)展名是否包含在這個字符串中
Response.Write(FileName + stringstrFileTypeLimit);
if (stringstrFileTypeLimit.IndexOf(FileName.ToLower()) != -1)
{
return true;
}
else
{
return false;
}
}
驗證文件大小,看看文件有沒有超過最大限制:
復(fù)制代碼 代碼如下:
//文件大小
public bool IsAllowableFileSize(long FileContentLength)
{
//從web.config讀取判斷文件大小的限制
Int32 doubleiFileSizeLimit;
doubleiFileSizeLimit = Convert.ToInt32(ConfigurationManager.AppSettings["FileSizeLimit"]);
//判斷文件是否超出了限制
if (doubleiFileSizeLimit > FileContentLength)
{
return true;
}
else
{
return false;
}
}
一下是配置文件的設(shè)置,里面規(guī)定了上傳文件的擴(kuò)展名和大小。
復(fù)制代碼 代碼如下:
appSettings>
add key="PicTureTye" value=".jpg|.gif|.png|.bmp|.jpeg|"/>
add key="FileSizeLimit" value="512000"/>
/appSettings>
代碼很簡單,只要在上傳之前調(diào)用這兩個方法,就可以對你要上傳的文件進(jìn)行一下簡單的驗證,不但適用于圖片的上傳,其他文件也行,只要根據(jù)你的需要修改一下配置文件即可。