欢迎来到代码驿站!

.NET代码

当前位置:首页 > 软件编程 > .NET代码

C#删除文件目录或文件的解决方法

时间:2021-02-24 09:38:11|栏目:.NET代码|点击:
复制代码 代码如下:

/// 删除文件和目录
public class Cleaner

{

   ///
   /// 删除指定目录以及该目录下所有文件
   ///
   /// 欲删除文件或者目录的路径
 
   public static void Clean ( string dir )

{
  
       CleanFiles ( dir );//第一次删除文件
  
       CleanFiles ( dir );//第二次删除目录
 
   }


private static void CleanFiles( string dir)

{
 
       if ( !Directory.Exists ( dir ) ) 
  
      {
          File.Delete ( dir );
          return;
  
      }
  
      else

    {

      string[] dirs = Directory.GetDirectories ( dir );

     string[] files = Directory.GetFiles ( dir );


   if ( 0 != dirs.Length )
     
     {
       
      foreach ( string subDir in dirs )
         
      {
           
       if ( null == Directory.GetFiles( subDir ) )
            
       {
                         Directory.Delete( subDir );
                
        return;
            
       }
            
       else CleanFiles ( subDir );
        
      }
     
     }
   
     if ( 0 != files.Length )
          {
     
      foreach ( string file in files )
      
      {
       
       File.Delete ( file );
               }
    
     }
    
     else Directory.Delete( dir );
   
    }

   }
}

使用方法,一句话.Directory.Delete( path, true)
以上有人可能认为很烦,没有意义,保必用递归呢.几句代码就可以了.
但我想说,使用递归的好处就是,可以,在里面做判断,比如你只想删除其中的部分条件文件,你可以这样改一下..比如你只想删除名字等到.aaa.txt的.完全可以,
复制代码 代码如下:

foreach ( string subDir in dirs )
         
      {
           
       if ( null == Directory.GetFiles( subDir )   && subDir == "aaa.txt")
            
       {
                         Directory.Delete( subDir );
                
        return;
            
       }
            
       else CleanFiles ( subDir );
        
      }

当然我只是弄个简单例子,但希望有用.呵.

上一篇:.NET下模拟数组越界的方法详解

栏    目:.NET代码

下一篇:asp.net String.Empty NULL 不同之处

本文标题:C#删除文件目录或文件的解决方法

本文地址:http://www.codeinn.net/misctech/69021.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有