.NET DateTime オブジェクトからミリ秒を削除する
さまざまなソースからのタイムスタンプを操作する場合、.NET DateTime
オブジェクトからミリ秒を削除して精度を調整することが重要になることがよくあります。このガイドでは、組み込み関数とカスタム拡張メソッドを使用した効率的な方法について詳しく説明します。
組み込みメソッドの使用:
組み込み関数を使用してミリ秒を削除するには、DateTime
プロパティを維持しながら、Ticks
で除算した後の剰余を減算して、TimeSpan.TicksPerSecond
の Kind
プロパティを調整します。
<code class="language-csharp">DateTime dateTime = ... any DateTime value ...; dateTime = new DateTime( dateTime.Ticks - (dateTime.Ticks % TimeSpan.TicksPerSecond), dateTime.Kind );</code>
簡潔な代替案:
よりコンパクトな同等物:
<code class="language-csharp">dateTime = dateTime.AddTicks(-(dateTime.Ticks % TimeSpan.TicksPerSecond));</code>
再利用性を高めるための拡張メソッド:
より広範なアプリケーションの場合は、拡張メソッドを作成します。
<code class="language-csharp">public static DateTime TruncateMilliseconds(this DateTime dateTime, TimeSpan timeSpan) { if (timeSpan == TimeSpan.Zero) return dateTime; if (dateTime == DateTime.MinValue || dateTime == DateTime.MaxValue) return dateTime; return dateTime.AddTicks(-(dateTime.Ticks % timeSpan.Ticks)); }</code>
実際の応用:
この拡張メソッドにより、さまざまな間隔への切り捨てが可能になります。
<code class="language-csharp">dateTime = dateTime.TruncateMilliseconds(TimeSpan.FromMilliseconds(1)); // Remove milliseconds dateTime = dateTime.TruncateMilliseconds(TimeSpan.FromSeconds(1)); // Truncate to seconds dateTime = dateTime.TruncateMilliseconds(TimeSpan.FromMinutes(1)); // Truncate to minutes // ... and so on</code>
これらの手法は、.NET DateTime
オブジェクトからミリ秒を削除する簡単な方法を提供し、異なるシステム間で一貫したタイムスタンプの比較を保証します。
以上が.NET DateTime オブジェクトからミリ秒を切り捨てるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。