C# でエポックタイムを変換するにはどうすればいいですか? 質問する

C# でエポックタイムを変換するにはどうすればいいですか? 質問する

Unixを変換するにはどうすればいいですか?エポックタイムC# でリアルタイムに変換しますか? (エポックは 1970 年 1 月 1 日から始まります)

ベストアンサー1

2024年更新

.NET Core (>= 2.1)の場合

DateTime.UnixEpoch.AddSeconds(epochSeconds)
DateTime.UnixEpoch.AddMilliseconds(epochMilliseconds)

2020年更新

DateTimeOffsetでこれを行うことができます

DateTimeOffset dateTimeOffset = DateTimeOffset.FromUnixTimeSeconds(epochSeconds);
DateTimeOffset dateTimeOffset2 = DateTimeOffset.FromUnixTimeMilliseconds(epochMilliseconds);

DateTimeの代わりにオブジェクトが必要な場合は、プロパティDateTimeOffsetを呼び出すことができます。DateTime

DateTime dateTime = dateTimeOffset.DateTime;

元の回答

おそらくあなたが言いたいのはUnix時間これは、1970 年 1 月 1 日の午前 0 時 (UTC) からの秒数として定義されます。

private static readonly DateTime epoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);

public static DateTime FromUnixTime(long unixTime)
{
    return epoch.AddSeconds(unixTime);
}

おすすめ記事