使用 C# 刪除目錄中的所有文件和子目錄

Google Translate Icon

給定一個目錄,使用 C# 刪除目錄中存在的所有文件和子目錄。

這個問題有兩種變體。在第一個變體中,我們從指定目錄中刪除所有文件和子目錄以及根目錄。在第二個變體中,我們刪除了所有文件和子目錄,但保留了根目錄。

1.刪除根目錄

要刪除指定目錄及其所有子目錄,請使用 Directory.Delete() 方法。下面的例子演示了它的用法。此方法的第二個參數指示是否刪除子目錄和文件。

下載代碼

 
我們也可以使用一個實例 DirectoryInfo 類刪除子目錄和文件。它有 DirectoryInfo.Delete() 方法,其工作原理類似於 Directory.Delete() 上面討論的方法。

下載代碼

2.保留根目錄

要刪除所有文件和子目錄而不刪除目錄,想法是遍歷所有文件/子目錄並單獨刪除它們。我們可以使用 GetFilesGetDirectories() 檢索現有文件和目錄的方法。

下載代碼

 
我們也可以使用 EnumerateFilesEnumerateDirectories() 枚舉現有文件和目錄的方法。這在處理許多文件和目錄時效率更高。

下載代碼

 
這也可以使用 LINQ 來完成 ForEach() 方法而不是 foreach 循環:

下載代碼

 
這是一種替代方法,它首先使用刪除指定目錄及其所有子目錄 Directory.Delete() 方法,然後重新創建目錄。請注意,這將永久刪除根目錄上的一些屬性。

下載代碼

這就是使用 C# 刪除目錄中的所有文件和子目錄。

評價這篇文章

平均評分 4.84/5。票數: 25

暫時沒有票!成為第一個給這篇文章評分的人。

很抱歉這篇文章對您沒有用處!

告訴我們如何改進這篇文章?




謝謝閱讀。

請使用我們的 在線編譯器 使用 C、C++、Java、Python、JavaScript、C#、PHP 和許多更流行的編程語言在評論中發布代碼。

像我們?將我們推薦給您的朋友,幫助我們成長。快樂編碼 :)



訂閱
通知
guest
0 註釋
內聯反饋
查看所有評論
請勿點擊此鏈接,否則您將被禁止訪問該網站!