ホームページ >バックエンド開発 >C++ >C# で DateTime オブジェクトを最も近い X 分に切り上げるにはどうすればよいですか?

C# で DateTime オブジェクトを最も近い X 分に切り上げるにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2025-01-06 19:07:41983ブラウズ

How Can I Round Up a DateTime Object to the Nearest X Minutes in C#?

日時を最も近い X 分に切り上げる

質問:

どうやって四捨五入しますかDateTime オブジェクトを指定された数の最も近い倍数まで上げます。分?

使用例:

この手法は、予定のスケジュールや特定のデータの調整など、時間を一定の間隔にスナップする必要があるシナリオで役立ちます。 timeframes.

解決策:

次の C# 関数 RoundUp は、この丸め演算を実現します。

public static DateTime RoundUp(DateTime dt, TimeSpan d)
{
    return new DateTime((dt.Ticks + d.Ticks - 1) / d.Ticks * d.Ticks, dt.Kind);
}

例:

DateTime 値を最も近い 15 分に切り上げるには、次のコードを使用します:

var dt1 = RoundUp(DateTime.Parse("2011-08-11 16:59"), TimeSpan.FromMinutes(15));

これにより、dt1 は {11/08/2011 17:00:00} に設定されます。同様に、元の値が 2011-08-11 17:01 の場合、dt1 は {11/08/2011 17:15:00} に設定されます。

TimeSpan.FromMinutes(15) 引数を調整することにより、では、任意の丸め間隔を指定できます。この方法は、時間を特定の間隔に切り上げる便利な方法を提供し、アプリケーションで正確な時間計算を実行できるようにします。

以上がC# で DateTime オブジェクトを最も近い X 分に切り上げるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。