刪除文件的哪種方法具有最佳性能?刪除文件vs目錄+重新創建表現
- 每個文件刪除,或
- 在刪除整個目錄中的文件一次,並且重新創建目錄
只是要注意的根目錄必須是仍然存在,所以無論是我可以做的:
var photo_files = Directory.EnumerateFiles(item_path, "*.jpg", SearchOption.TopDirectoryOnly);
foreach (var photo in photo_files)
{
File.Delete(photo);
}
或刪除整個目錄然後重新創建。
10000或甚至100000個文件會有多大的性能差異?
P.S.只是爲了澄清,.NET沒有功能一次刪除文件夾中的所有文件並離開目錄。
這是不正確的 - 「Directory.Delete」遞歸地通過具有'Win32Native.FindNextFile'的文件移動。 – 2011-04-13 14:27:33
所以它是一樣的?沒有性能改變? – Programista 2011-04-13 14:36:15
D先生...您可以提供您所聲稱的內容嗎?上次我擔心直接寫入操作需要做的是刪除一個目錄,只需要一次寫入mft,目錄所用的所有空間都被釋放。現在,如果您嘗試進行安全刪除是另一回事,但此要求不在此處。 – 2011-04-13 14:49:35