Delphiでファイルの作成時刻・最終アクセス時刻・最終書き込み時刻を取得する

System.IOUtilsユニットの関数を使うとファイルの作成時刻・最終アクセス時刻・最終書き込み時刻を簡単に取得できます。
System.IOUtilsユニットはDelphi 2010以降で使用できます。

使用するユニット

uses System.IOUtils;

ファイルの作成時刻を取得する

ファイルの作成時刻を取得するには、System.IOUtils.TFile.GetCreationTimeを使用します。

procedure TForm1.ButtonCreationTimeClick(Sender: TObject);
var
  Path: string;
  DateTime : TDateTime;
begin
  //作成時刻を取得したいファイルのパス
  Path := 'C:\sample\file.txt';
  DateTime := TFile.GetCreationTime(Path);
  ShowMessage(FormatDateTime('yyyy/mm/dd hh:nn:ss', DateTime));
end;

ファイルの UTC(協定世界時)タイムゾーンでの作成時刻を取得する

ファイルの UTC(協定世界時)タイムゾーンでの作成時刻を取得するには、System.IOUtils.TFile.GetCreationTimeUtcを使用します。

procedure TForm1.ButtonCreationTimeUtcClick(Sender: TObject);
var
  Path: string;
  DateTime : TDateTime;
begin
  //作成時刻を取得したいファイルのパス
  Path := 'C:\sample\file.txt';
  DateTime := TFile.GetCreationTimeUtc(Path);
  ShowMessage(FormatDateTime('yyyy/mm/dd hh:nn:ss', DateTime));
end;

ファイルの最終アクセス時刻を取得する

ファイルの最終アクセス時刻を取得するには、System.IOUtils.TFile.GetLastAccessTimeを使用します。

procedure TForm1.ButtonLastAccessTimeClick(Sender: TObject);
var
  Path: string;
  DateTime : TDateTime;
begin
  //最終アクセス時刻を取得したいファイルのパス
  Path := 'C:\sample\file.txt';
  DateTime := TFile.GetLastAccessTime(Path);
  ShowMessage(FormatDateTime('yyyy/mm/dd hh:nn:ss', DateTime));
end;

ファイルの UTC(協定世界時)タイムゾーンでの最終アクセス時刻を取得する

ファイルの UTC(協定世界時)タイムゾーンでの最終アクセス時刻を取得するには、System.IOUtils.TFile.GetLastAccessTimeUtcを使用します。

procedure TForm1.ButtonLastAccessTimeUtcClick(Sender: TObject);
var
  Path: string;
  DateTime : TDateTime;
begin
  //最終アクセス時刻を取得したいファイルのパス
  Path := 'C:\sample\file.txt';
  DateTime := TFile.GetLastAccessTimeUtc(Path);
  ShowMessage(FormatDateTime('yyyy/mm/dd hh:nn:ss', DateTime));
end;

ファイルの最終書き込み時刻を取得する

ファイルの最終書き込み時刻を取得するには、System.IOUtils.TFile.GetLastWriteTimeを使用します。

procedure TForm1.ButtonLastWriteTimeClick(Sender: TObject);
var
  Path: string;
  DateTime : TDateTime;
begin
  //最終書き込み時刻を取得したいファイルのパス
  Path := 'C:\sample\file.txt';
  DateTime := TFile.GetLastWriteTime(Path);
  ShowMessage(FormatDateTime('yyyy/mm/dd hh:nn:ss', DateTime));
end;

ファイルの UTC(協定世界時)タイムゾーンでの最終書き込み時刻を取得する

ファイルの UTC(協定世界時)タイムゾーンでの最終書き込み時刻を取得するには、System.IOUtils.TFile.GetLastWriteTimeUtcを使用します。

procedure TForm1.ButtonLastWriteTimeUtcClick(Sender: TObject);
var
  Path: string;
  DateTime : TDateTime;
begin
  //最終書き込み時刻を取得したいファイルのパス
  Path := 'C:\sample\file.txt';
  DateTime := TFile.GetLastWriteTimeUtc(Path);
  ShowMessage(FormatDateTime('yyyy/mm/dd hh:nn:ss', DateTime));
end;

変更履歴

  • 2016/11/05 タイプミスを修正しました。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください