DateTime.Ticks プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
このインスタンスの日付と時刻を表すタイマー刻み数を取得します。
public:
property long Ticks { long get(); };
public long Ticks { get; }
member this.Ticks : int64
Public ReadOnly Property Ticks As Long
プロパティ値
このインスタンスの日付と時刻を表すタイマー刻み数。 値は DateTime.MinValue.Ticks
から DateTime.MaxValue.Ticks
までの間にあります。
例
次の例では、 プロパティを Ticks 使用して、21 世紀の初めから経過したティック数を表示し、オブジェクトを TimeSpan インスタンス化します。 オブジェクトは TimeSpan 、他のいくつかの時間間隔を使用して経過時間を表示するために使用されます。
DateTime centuryBegin = new DateTime(2001, 1, 1);
DateTime currentDate = DateTime.Now;
long elapsedTicks = currentDate.Ticks - centuryBegin.Ticks;
TimeSpan elapsedSpan = new TimeSpan(elapsedTicks);
Console.WriteLine("Elapsed from the beginning of the century to {0:f}:",
currentDate);
Console.WriteLine(" {0:N0} nanoseconds", elapsedTicks * 100);
Console.WriteLine(" {0:N0} ticks", elapsedTicks);
Console.WriteLine(" {0:N2} seconds", elapsedSpan.TotalSeconds);
Console.WriteLine(" {0:N2} minutes", elapsedSpan.TotalMinutes);
Console.WriteLine(" {0:N0} days, {1} hours, {2} minutes, {3} seconds",
elapsedSpan.Days, elapsedSpan.Hours,
elapsedSpan.Minutes, elapsedSpan.Seconds);
// This example displays an output similar to the following:
//
// Elapsed from the beginning of the century to Thursday, 14 November 2019 18:21:
// 595,448,498,171,000,000 nanoseconds
// 5,954,484,981,710,000 ticks
// 595,448,498.17 seconds
// 9,924,141.64 minutes
// 6,891 days, 18 hours, 21 minutes, 38 seconds
open System
let centuryBegin = DateTime(2001, 1, 1)
let currentDate = DateTime.Now
let elapsedTicks = currentDate.Ticks - centuryBegin.Ticks
let elapsedSpan = TimeSpan elapsedTicks
printfn $"Elapsed from the beginning of the century to {currentDate:f}:"
printfn $" {elapsedTicks * 100L:N0} nanoseconds"
printfn $" {elapsedTicks:N0} ticks"
printfn $" {elapsedSpan.TotalSeconds:N2} seconds"
printfn $" {elapsedSpan.TotalMinutes:N2} minutes"
printfn $" {elapsedSpan.Days:N0} days, {elapsedSpan.Hours} hours, {elapsedSpan.Minutes} minutes, {elapsedSpan.Seconds} seconds"
// This example displays an output similar to the following:
//
// Elapsed from the beginning of the century to Thursday, 14 November 2019 18:21:
// 595,448,498,171,000,000 nanoseconds
// 5,954,484,981,710,000 ticks
// 595,448,498.17 seconds
// 9,924,141.64 minutes
// 6,891 days, 18 hours, 21 minutes, 38 seconds
Dim centuryBegin As Date = #1/1/2001 0:0:0#
Dim currentDate As Date = Date.Now
Dim elapsedTicks As Long = currentDate.Ticks - centuryBegin.Ticks
Dim elapsedSpan As New TimeSpan(elapsedTicks)
Console.WriteLine("Elapsed from the beginning of the century to {0:f}:", _
currentDate)
Console.WriteLine(" {0:N0} nanoseconds", elapsedTicks * 100)
Console.WriteLine(" {0:N0} ticks", elapsedTicks)
Console.WriteLine(" {0:N2} seconds", elapsedSpan.TotalSeconds)
Console.WriteLine(" {0:N2} minutes", elapsedSpan.TotalMinutes)
Console.WriteLine(" {0:N0} days, {1} hours, {2} minutes, {3} seconds", _
elapsedSpan.Days, elapsedSpan.Hours, _
elapsedSpan.Minutes, elapsedSpan.Seconds)
' If run on December 14, 2007, at 15:23, this example displays the
' following output to the console:
' 219,338,580,000,000,000 nanoseconds
' 2,193,385,800,000,000 ticks
' 219,338,580.00 seconds
' 3,655,643.00 minutes
' 2,538 days, 15 hours, 23 minutes, 0 seconds
注釈
1 ティックは、100 ナノ秒または 1,000 万分の 1 秒を表します。 1 ミリ秒に 10,000 ティック (参照 TicksPerMillisecond) があり、1 秒間に 1,000 万ティックがあります。
このプロパティの値は、グレゴリオ暦の 0001 年 1 月 1 日の午前 12 時 00 分から経過した 100 ナノ秒間隔の数を表します。これは を表します MinValue。 閏秒に起因するティック数は含まれません。
DateTime オブジェクトの プロパティが にLocal
設定されている場合、ティックはKind
、現在のタイム ゾーン設定で指定された現地時刻の 12:00:00 午前 0 時、0001 年 1 月 1 日からの経過時間を表します。
オブジェクトの DateTime
プロパティが にUtc
設定されている場合、そのティックはKind
、協定世界時の 0001 年 1 月 1 日午前 0 時 00 分 00 分からの経過時間を表します。
オブジェクトの DateTime
プロパティが にUnspecified
設定されている場合、そのティックはKind
、不明なタイム ゾーンの 0001 年 1 月 1 日の午前 0 時 00 分 00 分 12 時からの経過時間を表します。
一般に、ティックは、 プロパティで指定されたタイム ゾーンに従って時刻を Kind
表します。
適用対象
.NET