ホームページ > バックエンド開発 > C++ > .NET DateTime 値からミリ秒を切り捨てるにはどうすればよいですか?

.NET DateTime 値からミリ秒を切り捨てるにはどうすればよいですか?

Patricia Arquette
リリース: 2025-01-18 21:57:13
オリジナル
314 人が閲覧しました

How to Truncate Milliseconds from a .NET DateTime Value?

.NET DateTime 値からミリ秒を削除する

外部ソースからのタイムスタンプとデータベース値を比較する場合、多くの場合、ミリ秒の精度の不一致を排除する必要があります。 これは通常、受信タイムスタンプにミリ秒の詳細が不足している場合に発生し、.NET DateTime オブジェクトからミリ秒を削除する必要があります。

ミリ秒を削除する効率的な方法は次のとおりです:

方法 1: ティックの直接操作

このアプローチは、DateTimeTicks プロパティを直接変更します。

<code class="language-csharp">DateTime dateTime = ...; // Your DateTime value
dateTime = new DateTime(dateTime.Ticks - (dateTime.Ticks % TimeSpan.TicksPerSecond), dateTime.Kind);</code>
ログイン後にコピー

方法 2: AddTicks を使用する

より簡潔な代替案では、AddTicks メソッドを利用します。

<code class="language-csharp">dateTime = dateTime.AddTicks(-(dateTime.Ticks % TimeSpan.TicksPerSecond));</code>
ログイン後にコピー

方法 3: カスタマイズ可能な切り捨てのための拡張方法

柔軟性を高めるために、拡張メソッドを使用して任意の間隔に切り詰めることができます。

<code class="language-csharp">public static DateTime Truncate(this DateTime dateTime, TimeSpan timeSpan)
{
    return dateTime.AddTicks(-(dateTime.Ticks % timeSpan.Ticks));
}</code>
ログイン後にコピー

この拡張メソッドでは、以下を使用してミリ秒の切り捨てが可能になります。

<code class="language-csharp">dateTime = dateTime.Truncate(TimeSpan.FromMilliseconds(1));</code>
ログイン後にコピー

さらに、秒または分への切り捨てもサポートしています:

<code class="language-csharp">dateTime = dateTime.Truncate(TimeSpan.FromSeconds(1)); // Truncate to the nearest second
dateTime = dateTime.Truncate(TimeSpan.FromMinutes(1)); // Truncate to the nearest minute</code>
ログイン後にコピー

これらのメソッドは、.NET DateTime 値からミリ秒を削除する簡単なソリューションを提供し、精度の違いに関係なく正確なタイムスタンプの比較を保証します。

以上が.NET DateTime 値からミリ秒を切り捨てるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート