我有c#應用程序。這寫入登錄文件夾。刪除文件並重新創建文件後,不更改Windows中的創建日期
代碼如下。
if (File.Exists(@"C:\EXT_LOG\LOG.txt"))
{
File.Delete(@"C:\EXT_LOG\LOG.txt");
}
string Data = "xxxxx";
System.IO.StreamWriter file = new StreamWriter(@"C:\EXT_LOG\LOG.txt");
file.WriteLine(Data);
file.Dispose();
file.Close();
我刪除文件,如果存在,我創建具有相同名稱的文件。 當我運行程序時,文件的創建日期不變。
我猜windows的任何管理器或任何文件表仍然包含該文件。
那麼,當我刪除文件時,是否可以刪除管理器或文件表內容?
如何以及何時你檢索創建日期?如果它只是Windows資源管理器,你有沒有嘗試點擊F5刷新視圖? –
@GrantWinney其實你可以從Windows資源管理器自己測試。 1)查找現有的舊文件。 2)刪除它3)創建一個具有相同名稱的新文件4)新文件將具有相同的**創建**每個舊文件(假設你足夠快)。請參閱下面的dotnetkid答案。我很驚訝自己:) – MickyD
這樣做的原因是爲了安全保存。就像MS WORD所做的一樣。當應用程序自動保存時,它們不會覆蓋文件。相反,他們移動舊文件,並創建一個副本新文件。但是,新文件需要保留舊文件的屬性,包括創建時間。請參閱您在前面看到的帶有〜符號的臨時文件,使隱藏文件可以看到發生這種情況。 – SreekanthGS