ディレクトリ内のファイルを取得するためのコードがいくつかあります。
foreach (var Totalfile in new DirectoryInfo(rootfolder).GetFiles("*Totals*.csv", SearchOption.TopDirectoryOnly))
ファイルの名前は次のとおりです。
Totals.CSV142344
Totals.CSV142409
Totals.CSV142433
Totals.CSV142501
Totals.CSV142528
私の問題は、最後のファイルを取得していないことです。
代わりにこれを置くことでコードを修正しました:
foreach (var Totalfile in new DirectoryInfo(rootfolder).GetFiles("*Totals*.csv*", SearchOption.TopDirectoryOnly))
Totalsと.csvの両方を含み、.csvの後ろにあるファイルを取得するとします。
取得できないのは、上位4つのファイルが取得されたが、最後のファイルが取得されなかった理由です。
元のコードがファイルを取得しないと思いましたか?
1
問題のファイルは削除されましたが、ウイルス対策などで開いたままになっていますか?これは、エクスプローラーがまだリストする「ゴースト」ファイルにつながる可能性がありますが、実際にはもはやディスク上に存在していません。
—
Lasse V. Karlsen、
短い名前は宿敵です。ファイルが多すぎると、収まら
—
ハンスパッサント
Totals~n.csv
なくなり、でのみ一致を取得できますTotal*
。入力dir /x tot*.*
して短い名前を表示します。あなたは賛成Totals.csv*
と偶然の一致を排除するためにフィルタリングする必要があります。