上傳圖片前判斷文件格式與大小驗(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ī)定圖片最大不超過多少,所以在上傳之前還要進(jìn)行圖片大小的一個(gè)驗(yàn)證。今天就讓我們來做一下這兩個(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)證文件大小,看看文件有沒有超過最大限制:
//文件大小
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)證文件大小,看看文件有沒有超過最大限制:
復(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中如何批量導(dǎo)出access某表內(nèi)容到word文檔
最近有項(xiàng)目需求是這樣的,需要將某表中的每一條記錄中的某些內(nèi)容導(dǎo)出在一個(gè)word文檔中。下面小編就把我的解決辦法分享給大家,供大家參考2015-10-10ASP.NET通過更改Url進(jìn)行頁面?zhèn)髦档膶?shí)現(xiàn)代碼
這篇文章主要介紹了ASP.NET通過更改Url進(jìn)行頁面?zhèn)髦档膶?shí)現(xiàn)代碼,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-04-04深入淺析ASP在線壓縮access數(shù)據(jù)庫的方法
這篇文章主要介紹了ASP在線壓縮access數(shù)據(jù)庫的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-09-09在Asp.net下實(shí)現(xiàn)變長(zhǎng)連接的web即時(shí)應(yīng)用的實(shí)現(xiàn)范例及ReverseAjax的演示介紹
根據(jù)公司近期的一個(gè)培訓(xùn)整理的資料,附件包括一個(gè)完整的使用變長(zhǎng)連接的web即時(shí)聊天室的范例和針對(duì)ReverseAjax的ppt培訓(xùn)文稿,其中ppt中包含了對(duì)范例程序的完整講解2011-12-12