[C# File] ファイルのタイムスタンプを取得、設定する

スポンサーリンク

ファイルのタイムスタンプを取得

ファイルの作成日時を取得するには、System.IO.File.GetCreationTimeメソッド
ファイルの更新日時を取得するには、System.IO.File.GetLastWriteTimeメソッド
ファイルのアクセス日時を取得するには、System.IO.File.GetLastAccessTimeメソッドを使用します。

それぞれのメソッドの引数にはファイルのパスを指定します。
戻り値は日付データ(DateTime構造体)になります。

using System;
using System.IO;
class Program
{
    public static void Main()
    {
        // ファイルのパス
        var dirPath = @"D:\source\repos\test\test\Program.cs";

        // ファイルの作成日時を取得
        Console.WriteLine($"作成日時: {File.GetCreationTime(dirPath)}");

        // ファイルの更新日時を取得
        Console.WriteLine($"更新日時: {File.GetLastWriteTime(dirPath)}");

        // ファイルのアクセス日時を取得
        Console.WriteLine($"アクセス日時: {File.GetLastAccessTime(dirPath)}");
    }
}
作成日時: 2020/02/13 23:56:00
更新日時: 2020/04/26 19:42:17
アクセス日時: 2020/04/26 19:45:47
スポンサーリンク

ファイルのタイムスタンプを設定

ファイルの作成日時を設定するには、System.IO.File.SetCreationTimeメソッド
ファイルの更新日時を設定するには、System.IO.File.SetLastWriteTimeメソッド
ファイルのアクセス日時を設定するには、System.IO.File.SetLastAccessTimeメソッドを使用します。

それぞれのメソッドの第1引数にファイルパス、第2引数には設定する日付データ(DateTime構造体)を指定します。

戻り値はありません。

using System;
using System.IO;
class Program
{
    public static void Main()
    {
        // ファイルのパス
        var filePath = @"D:\source\repos\test\test\Program.cs";

        // ファイルの作成日時を取得
        Console.WriteLine($"設定前 作成日時: {File.GetCreationTime(filePath)}");

        // ファイルの更新日時を取得
        Console.WriteLine($"設定前 更新日時: {File.GetLastWriteTime(filePath)}");

        // ファイルのアクセス日時を取得
        Console.WriteLine($"設定前 アクセス日時: {File.GetLastAccessTime(filePath)}");

        // 現在日時を取得
        var now = DateTime.Now;
        Console.WriteLine($"{now}を設定");

        // ファイルの作成日時を設定
        File.SetCreationTime(filePath, now);

        // ファイルの更新日時を設定
        File.SetLastWriteTime(filePath, now);

        // ファイルのアクセス日時を設定
        File.SetLastAccessTime(filePath, now);

        // ファイルの作成日時を取得
        Console.WriteLine($"設定後 作成日時: {File.GetCreationTime(filePath)}");

        // ファイルの更新日時を取得
        Console.WriteLine($"設定後 更新日時: {File.GetLastWriteTime(filePath)}");

        // ファイルのアクセス日時を取得
        Console.WriteLine($"設定後 アクセス日時: {File.GetLastAccessTime(filePath)}");
    }
}
設定前 作成日時: 2020/02/13 23:56:00
設定前 更新日時: 2020/04/26 19:42:17
設定前 アクセス日時: 2020/04/26 19:45:47
2020/04/26 19:50:15を設定
設定後 作成日時: 2020/04/26 19:50:15
設定後 更新日時: 2020/04/26 19:50:15
設定後 アクセス日時: 2020/04/26 19:50:15

C# プログラミング講座に戻る

コメント

タイトルとURLをコピーしました