C#刪除文件目錄或文件的解決方法
更新時間:2013年05月30日 16:23:33 作者:
本篇文章是對C#中如何刪除文件目錄或文件的解決方法進行了詳細的分析介紹,需要的朋友參考下
復制代碼 代碼如下:
/// 刪除文件和目錄
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 );
}
當然我只是弄個簡單例子,但希望有用.呵.
相關文章
基于C#的UDP協(xié)議的同步通信實現(xiàn)代碼
本篇文章主要介紹了基于C#的UDP協(xié)議的同步實現(xiàn)代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-02-02C# NullReferenceException解決案例講解
這篇文章主要介紹了C# NullReferenceException解決案例講解,本篇文章通過簡要的案例,講解了該項技術的了解與使用,以下就是詳細內容,需要的朋友可以參考下2021-08-08datatable生成excel和excel插入圖片示例詳解
excel導出在C#代碼中應用己經(jīng)很廣泛了,下面講了datatable生成excel、復制sheet頁、刪除sheet頁、選中sheet頁、另存excel文件、excel中插入圖片等功能2014-01-01