奇怪的文件创建时间戳

时间:2013-03-05 11:17:11

标签: c# file

好吧,我使用FileInfo.Create()方法创建了大量文件,经过一段时间后,我会查找在该日期创建的所有文件。

oCurrentFile 
    = new FileInfo(oFileRegion.Directory.FullName + "\\" + _traceFilePrefix 
                    + sIdentifier + "_" + DateTime.Now.ToString("yyyy-MM-dd-HH-mm-ss.ffff") + _traceFileExt);
FileStream fs = oCurrentFile.Create(); fs.Close();

这几天都很好用!最近,我试图收集昨天创建的所有文件。

IEnumerable<FileInfo> oldFiles =
    (from oldFile in oldFiles
    where oldFile.CreationTime.DayOfYear == DateTime.Now.Substract(new TimeSpan(1,0,0,0).DayOfYear
    orderby oldFile.CreationTime ascending
    select oldFile)

当我使用.Count()查找文件数时,意外情况很大: 0

所以我检查了为什么它没有找到任何文件并注意到,我的所有文件都有以下创建日期:

01.01.1601 00:00:00.000

到底是什么?是什么导致了这种奇怪的行为?为什么Windows不再冒险创造日期?

1 个答案:

答案 0 :(得分:1)

我对FileInfo认为不存在的文件有相同的行为。确保该文件存在,并且它是在FileInfo对象之前创建的。否则,您需要调用FileInfo.Refresh()以便更新FileInfo对象中的状态数据。