上傳圖片前判斷文件格式與大小驗(yàn)證文件是不是圖片
更新時(shí)間:2014年03月05日 17:21:25 作者:
既然上傳的是圖片,那么就應(yīng)該在上傳之前對(duì)文件進(jìn)行一下驗(yàn)證,看看要上傳的是不是圖片文件
最近工作中需要做一個(gè)上傳圖片的功能,既然上傳的是圖片,那么就應(yīng)該在上傳之前對(duì)文件進(jìn)行一下驗(yàn)證,看看要上傳的是不是圖片文件。所以在上傳之前要對(duì)所選文件的格式進(jìn)行驗(yàn)證。上傳圖片時(shí)因?yàn)榉?wù)器資源有限,經(jīng)常會(huì)規(guī)定圖片最大不超過(guò)多少,所以在上傳之前還要進(jìn)行圖片大小的一個(gè)驗(yàn)證。今天就讓我們來(lái)做一下這兩個(gè)驗(yàn)證。
驗(yàn)證文件類型,看看所選文件是不是圖片:
//文件類型:
protected bool IsAllowableFileType(string FileName)
{
//從web.config讀取判斷文件類型限制
string stringstrFileTypeLimit;
stringstrFileTypeLimit = ConfigurationManager.AppSettings["PicTureTye"].ToString();
//當(dāng)前文件擴(kuò)展名是否包含在這個(gè)字符串中
Response.Write(FileName + stringstrFileTypeLimit);
if (stringstrFileTypeLimit.IndexOf(FileName.ToLower()) != -1)
{
return true;
}
else
{
return false;
}
}
驗(yàn)證文件大小,看看文件有沒(méi)有超過(guò)最大限制:
//文件大小
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ò)展名和大小。
<appSettings>
<add key="PicTureTye" value=".jpg|.gif|.png|.bmp|.jpeg|"/>
<add key="FileSizeLimit" value="512000"/>
</appSettings>
代碼很簡(jiǎn)單,只要在上傳之前調(diào)用這兩個(gè)方法,就可以對(duì)你要上傳的文件進(jìn)行一下簡(jiǎn)單的驗(yàn)證,不但適用于圖片的上傳,其他文件也行,只要根據(jù)你的需要修改一下配置文件即可。
驗(yàn)證文件類型,看看所選文件是不是圖片:
復(fù)制代碼 代碼如下:
//文件類型:
protected bool IsAllowableFileType(string FileName)
{
//從web.config讀取判斷文件類型限制
string stringstrFileTypeLimit;
stringstrFileTypeLimit = ConfigurationManager.AppSettings["PicTureTye"].ToString();
//當(dāng)前文件擴(kuò)展名是否包含在這個(gè)字符串中
Response.Write(FileName + stringstrFileTypeLimit);
if (stringstrFileTypeLimit.IndexOf(FileName.ToLower()) != -1)
{
return true;
}
else
{
return false;
}
}
驗(yàn)證文件大小,看看文件有沒(méi)有超過(guò)最大限制:
復(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>
代碼很簡(jiǎn)單,只要在上傳之前調(diào)用這兩個(gè)方法,就可以對(duì)你要上傳的文件進(jìn)行一下簡(jiǎn)單的驗(yàn)證,不但適用于圖片的上傳,其他文件也行,只要根據(jù)你的需要修改一下配置文件即可。
相關(guān)文章
淺談從ASP.NET Core2.2到3.0你可能會(huì)遇到這些問(wèn)題
這篇文章主要介紹了ASP.NET Core2.2到3.0可能會(huì)遇到的問(wèn)題,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04
輕量級(jí)ORM框架Dapper應(yīng)用之安裝Dapper
這篇文章介紹了輕量級(jí)ORM框架Dapper的安裝方法,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-03-03
ASP.NET URL偽靜態(tài)重寫(xiě)實(shí)現(xiàn)方法
ASP.NET下為靜態(tài)的實(shí)現(xiàn)方法。2009-12-12

