正在阅读:通过HtmlInputFile控件上传文件的类通过HtmlInputFile控件上传文件的类

2005-09-26 10:00 出处:PConline 作者:Kgdiwss 责任编辑:moningfeng

  热门推荐用Asp.net制作顶部导航控件    ASP漏洞解析及黑客防范法

  源码下载(附件)

  在开发ASP.NET项目时,经常遇到要上传文件的情况,出于安全考虑,我们不但要对上传文件的扩展名进行判断,同时还要对上传文件的大小等进行控制。如果每次遇到上传文件时都写一堆的代码,那不但浪费了时间,同时也会使程序的效率降低。于是我将上传文件写成一个类,这样以后就可以调用类的方法上传文件了。

  方法1:判断文件扩展名是否合法

#regionIsAllowedExtension
///<summary>
///是否允许该扩展名上传
///</summary>
///<paramname = "hifile">HtmlInputFile控件</param>
///<returns>允许则返回true,否则返回false</returns>
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<arrExtension.Length;i++)
{
if(strExtension.Equals(arrExtension[i]))
{
return true;
}
}
}
returnfalse;
}
#endregion



  方法2:判断上传文件大小是否超过最大值

#region IsAllowedLength
/// <summary>
/// 判断上传文件大小是否超过最大值
/// </summary>
/// <param name="hifile">HtmlInputFile控件</param>
/// <returns>超过最大值返回false,否则返回true.</returns>
public static bool IsAllowedLength(HtmlInputFile hifile)
{
//允许上传文件大小的最大值,可以保存在xml文件中,单位为KB
int i = 20;
//如果上传文件的大小超过最大值,返回flase,否则返回true.
if(hifile.PostedFile.ContentLength > i * 1024)
{
return false;
}
return true;
}
#endregion


键盘也能翻页,试试“← →”键

相关文章

关注我们

最新资讯离线随时看 聊天吐槽赢奖品