Asp.net上传文件,过滤不符合要求格式的文件

Asp.net上传文件,需要过滤不符合要求格式的文件,你可以先使用下面这个方法,查出所有允许用户上传文件要格式:

http://www.cnblogs.com/insus/articles/1980495.html

 放在一个阵列中,如:

 string[] fileClass = { "7076""4838" };  //7076 is FLV;4838 is wmv;

 

然后写一个方法去判断:

View Code
bool CompareFileClass(string path, string[] allowFileClass)
    {
        
try
        {
            
bool result = false;
            
string fileClass = GetFileCass(path);
            
for (int i = 0; i < allowFileClass.Length; i++)
            {
                
if (string.Compare(fileClass, allowFileClass[i], true!= 0continue;
                result 
= true;
            }

            
return result;
        }
        
catch
        {
            
return false;
        }
    }

 

最后在上传铵钮Click事件写代码,仅供参考:

View Code
 protected void Button1_Click(object sender, EventArgs e)
    {
       
//判断用户是否有选择一个文件。
        if (!File.Exists(this.FileUpload1.PostedFile.FileName))
        {           
            objJs.JsAlert(
"You did not specify a file.");
            
return;
        }

        
//宣告一个变量,存储上传的文件。
        string path = this.FileUpload1.PostedFile.FileName;
       
        
//这个定制好允许用户上传的文件格式。
        string[] fileClass = { "7076""4838" };  //7076 is FLV;4838 is wmv;
        
        
//判断上传的文件是否是允许的上传的文件格式
        if (!CompareFileClass(path, fileClass))
        {
            objJs.JsAlert(
"You did not specify a media file.");
            
return;
        }

        
//如果检测到上传文件符合格式要求,处理接下来的事情。
    }

 

 

 

posted @ 2011-03-11 14:12  Insus.NET  阅读(1845)  评论(1编辑  收藏  举报