Windowsのファイルエクスプローラでは、の日付というタブに基づいてファイルを並べ替えるオプションがあります。私はコード(C#)のファイルの日付情報を取得したいと思います。ファイルの日付属性の取得
(これは最終を作成しとを変更した日付とは異なり、また、File.GetLastWriteTime()
方法により提供日から。)
どのようにそれは可能ですか?
Windowsのファイルエクスプローラでは、の日付というタブに基づいてファイルを並べ替えるオプションがあります。私はコード(C#)のファイルの日付情報を取得したいと思います。ファイルの日付属性の取得
(これは最終を作成しとを変更した日付とは異なり、また、File.GetLastWriteTime()
方法により提供日から。)
どのようにそれは可能ですか?
Date
列は、作成日と変更日を比較し、それらの2つ前の日を返します。 Fileクラスを使用して直接取得する方法はありませんが、自分で比較を行い、以前の値を使用することができます。
は、ここでは、2つの日付の早いを取得する(非常に読みやすいではないが)簡単な方法です:
new DateTime(Math.Min(yourFile.GetCreationTime().Ticks, yourFile.GetLastWriteTime().Ticks))
ここもDate
列は常にDate modified
とDate created
の以前の一つである示してスクリーンショットです。
編集:変更日の理由は、以前の作成日よりであることは、私の例では、ファイルだけでzipアーカイブから解凍されていることです。
エクスプローラのカテゴリには「変更日」というラベルが付けられており、実際には「File.GetLastWriteTime」メソッドに対応しています。どうやって別の日付を取得していますか? –
@CodyGray実際には「日付」列もありますが、デフォルトでは表示されません。 – hankide
"Date"が作成日であるように私に見えます。問題はもっとはっきりしているかもしれません。多分、矛盾は現地時間とUTC時間のどちらかですか?私たちは推測する必要はありません。 –