.net如何同时删除多个文件?

解决方案 »

  1.   

     string[] _File=System.IO.Directory.GetFiles(@"C:\Temp", "*.txt");            for (int i = 0; i != _File.Length; i++)
                {
                    System.IO.File.Delete(_File[i]);
                }例如删除 C:\Temp 下所有txt文件.
      

  2.   

    我的代码是这样的:
            string url = "";
            string img = "";
            for (int i = 0; i < GridView3.Rows.Count; i++)
            {
                if (((CheckBox)GridView3.Rows[i].FindControl("CheckBox2")).Checked)
                {
                    url += "" + GridView3.Rows[i].Cells[5].Text + "";
                    img += "" + GridView3.Rows[i].Cells[6].Text + "";
                }
            }
            string fileName = Server.MapPath(url);//要删除的文件路径
             string fileimg = Server.MapPath(img);
            if (File.Exists(fileName))
            {
                File.Delete(fileName);
            }
            if (File.Exists(fileimg))
            {
                File.Delete(fileimg);
            }
      

  3.   

            string url = ""; 
            string img = ""; 
            for (int i = 0; i < GridView3.Rows.Count; i++) 
            { 
                if (((CheckBox)GridView3.Rows[i].FindControl("CheckBox2")).Checked) 
                { 
                     url = "" + GridView3.Rows[i].Cells[5].Text + ""; 
                     img = "" + GridView3.Rows[i].Cells[6].Text + ""; 
                    
                     //把这段代码放到for循环里面,就循环删除
                     string fileName = Server.MapPath(url);//要删除的文件路径 
                       string fileimg = Server.MapPath(img); 
                     if (File.Exists(fileName)) 
                     { 
                         File.Delete(fileName); 
                     } 
                     if (File.Exists(fileimg)) 
                     { 
                         File.Delete(fileimg); 
                     }            } 
            } 
      

  4.   

    以下是楼主代码,这样的代码会出现一个很怪的结果,比如说url,如果有多个值,结果就是“c:\test1.txtc:\test2.txtc:\test3.txt”,
    你用累加的形式只会出现这样连续的路径,这样肯定删不掉的,路径明显不对了。
    可以循环放在一个集合里,然后点击删除事件的时候再循环取出集合里的路径进行删除操作。。        string url = ""; 
            string img = ""; 
            for (int i = 0; i < GridView3.Rows.Count; i++) 
            { 
                if (((CheckBox)GridView3.Rows[i].FindControl("CheckBox2")).Checked) 
                { 
                    url += "" + GridView3.Rows[i].Cells[5].Text + ""; 
                    img += "" + GridView3.Rows[i].Cells[6].Text + ""; 
                } 
            } 
            string fileName = Server.MapPath(url);//要删除的文件路径 
            string fileimg = Server.MapPath(img); 
            if (File.Exists(fileName)) 
            { 
                File.Delete(fileName); 
            } 
            if (File.Exists(fileimg)) 
            { 
                File.Delete(fileimg); 
            }