さて、私はこの方法を使用して多数のファイルを作成し、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はどこからともなく作成日を取得するのをやめたのですか?