在网站中,存在着大量的图片,我想通过后台来删除图片
我试了用以下方法,虽然可以删除但速度很慢,经常会出现请求时间过长的错误.
       Dim fileNameList() As String       fileNameList = System.IO.Directory.GetFiles(directoryPath)
        For Each filePath As String In fileNameList
            Dim file As New FileInfo(filePath)
            file.Delete()
        Next
大家有什么更好的方法吗?

解决方案 »

  1.   

    管理员物理维护
    shift+delete
      

  2.   

     #region 递归删除文件夹目录及文件
            /****************************************
             * 函数名称:DeleteFolder
             * 功能说明:递归删除文件夹目录及文件
             * 参    数:dir:文件夹路径
             * 调用示列:
             *           string dir = Server.MapPath("test/"); 
             *           EC.FileObj.DeleteFolder(dir);       
            *****************************************/
            /// <summary>
            /// 递归删除文件夹目录及文件
            /// </summary>
            /// <param name="dir"></param>
            /// <returns></returns>
            public static void DeleteFolder(string dir)
            {
                if (Directory.Exists(dir)) //如果存在这个文件夹删除之 
                {
                    foreach (string d in Directory.GetFileSystemEntries(dir))
                    {
                        if (File.Exists(d))
                            File.Delete(d); //直接删除其中的文件 
                        else
                            DeleteFolder(d); //递归删除子文件夹 
                    }
                    Directory.Delete(dir); //删除已空文件夹 
                }        }        #endregion
      

  3.   

    如果太慢可考虑用shell来做 Process p = new Process();
    p.StartInfo.FileName = "cmd.exe";
    p.StartInfo.Arguments = "/c del "+ dirname +" /s";
    p.Start();
      

  4.   

    用通配符可删除指定的文件,例如:
    string dirname = "c:\mydir\myfile.*";
    可以删除c盘上mydir目录下文件名是myfile的任意扩展名文件
      

  5.   

    遍历递归删除,或GetFiles(*.ipg");
    删除文件
    Dim di As New DirectoryInfo("D:\Temp")
    Dim fi As FileInfo() = di.GetFiles("*.jpg")
    For Each f As FileInfo In fiNext
      

  6.   

    用System.IO.File类的静态方法Delete来删除,不要用FileInfo的实例方法Delete,后者你必须先实例化一个FileInfo对象,你的性能问题就出在这里。另外如果删除整个文件夹,可以直接用 Directory.Delete(路径,true)
      

  7.   

    有一个是杨老师
    楼上OUT了。
      

  8.   


    刚回去看了那个吴老师的帖子,看到了吴起娃的介绍。原来是杨老师。
    ---
    看了介绍我更是一惊啊,原来我看这情形我是有股的熟悉感觉。。我就回想啊回想然我找啊找啊。原来我自己的垃圾博客一年前曾经收录了陕北吴旗娃的一篇自述但是我也是这几个曰来才真正开始逛csdn的,,好多前辈我都不认识然后我摘录的时候,美其名曰:励志篇我抽个时间感叹下,发片文章到非技术区在一年后的今天我才真正的见识到这篇曾经让我非常触动的文章的作者的庐山真面目。。哎,大哥,缘分呐老妖的一棒喝起,让我回到一年前自己在夹缝中成长的时光回忆。。
      

  9.   

    先判断下文件是否存在如存在就File.Delete()删除文件夹就Directory.Delete()