我有一個垃圾郵件目錄,我可以在那裏下載,一次性項目,電子郵件草稿以及其他幾天可能有用的東西,但不需要永久保存。爲了阻止這個目錄接管我的機器,我編寫了一個程序,該程序將刪除所有超過指定天數的文件,並記錄一些統計數據,包括刪除的文件數量和它們的大小,以方便玩樂。如何刪除只讀文件?
我注意到一些項目文件夾的生活方式比他們應該更長,所以我開始調查。特別是,似乎我曾經使用過SVN的項目文件夾正在不停地徘徊。事實證明,.svn目錄中的只讀文件未被刪除。我只對一個只讀文件做了一個簡單的測試,發現System.IO.File.Delete
和System.IO.FileInfo.Delete
不會刪除一個只讀文件。
我不在乎保護這個特定目錄中的文件;如果有重要的東西在那裏,那就錯了。有沒有一個.NET類可以刪除只讀文件,或者我將不得不檢查只讀屬性並刪除它們?
我改變接受的答案,因爲古勒扎爾的代碼示例比Tim Stewart的更詳細。應該首先選擇那個,但由於某種原因,我喜歡Tim的更好。人是奇怪的東西! – OwenP 2009-04-30 22:13:58
+ +1爲了讓時間在宇宙中變得更加正確一些。如果只有我的開發人員會回去糾正我們自己的輕微違規行爲,我們才能取消補救編程課程! – 2009-05-01 11:38:45