在开发ASP.NET项目时,经常遇到要上传文件的情况,出于安全考虑,我们不但要对上传文件的扩展名进行判断,同时还要对上传文件的大小等进行控制。如果每次遇到上传文件时都写一堆的代码,那不但浪费了时间,同时也会使程序的效率降低。于是我将上传文件写成一个类,这样以后就可以调用类的方法上传文件了。
方法1:判断文件扩展名是否合法
#regionIsAllowedExtension
///
///是否允许该扩展名上传
///
///
///
publicstaticboolIsAllowedExtension(HtmlInputFilehifile)
{
stringstrOldFilePath = "",strExtension = "";
//允许上传的扩展名,可以改成从配置文件中读出
string[]arrExtension = {".gif",".jpg",".jpeg",".bmp",".png"};
if(hifile.PostedFile.FileName! = string.Empty)
{
strOldFilePath = hifile.PostedFile.FileName;
//取得上传文件的扩展名
strExtension = strOldFilePath.Substring(strOldFilePath.LastIndexOf("."));
//判断该扩展名是否合法
for(inti = 0;i
if(strExtension.Equals(arrExtension[i]))
{
return true;
}
}
}
returnfalse;
}
#endregion
方法2:判断上传文件大小是否超过最大值
#region IsAllowedLength
///
/// 判断上传文件大小是否超过最大值
///
/// HtmlInputFile控件
///
public static bool IsAllowedLength(HtmlInputFile hifile)
{
//允许上传文件大小的最大值,可以保存在xml文件中,单位为KB
int i = 20;
//如果上传文件的大小超过最大值,返回flase,否则返回true.
if(hifile.PostedFile.ContentLength > i * 1024)
{
return false;
}
return true;
}
#endregion
