C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#のDateTimeOffset.AddMinutes()メソッドの使い方を解説

C#のDateTimeOffset.AddMinutes()メソッドは、現在のDateTimeOffsetインスタンスの値に、指定した分数(整数・小数どちらも可)を加算するために使用されます。オフセット情報(UTCとの時差)はそのまま維持されるため、タイムゾーンを考慮した日時計算に便利です。

構文

AddMinutes()メソッドの構文は以下のとおりです。

public DateTimeOffset AddMinutes (double val);

引数valには加算する分数を指定します。小数値を渡すことで秒単位の細かい加算も可能です。また、負の値を指定すると、指定した分数だけ減算(引き算)できます。

使用例1:分を加算する

まず、DateTimeOffset.AddMinutes()メソッドを使って分を加算する基本的な例を見てみましょう。

using System;
public class Demo {
    public static void Main() {
        DateTimeOffset dateTimeOffset = new DateTimeOffset(2019, 08, 10, 4, 20, 10, new TimeSpan(-5, 0, 0));
        Console.WriteLine("DateTimeOffset (before adding minutes) = {0}", dateTimeOffset);
        DateTimeOffset res = dateTimeOffset.AddMinutes(15);
        Console.WriteLine("DateTimeOffset (after adding minutes) = {0}", res);
    }
}

出力結果

上記のコードを実行すると、次のような出力が得られます。

DateTimeOffset (before adding minutes) = 8/10/2019 4:20:10 AM -05:00
DateTimeOffset (after adding minutes) = 8/10/2019 4:35:10 AM -05:00

この例では、2019年8月10日4時20分10秒(オフセット-05:00)の時刻に15分を加算しているため、4時35分10秒という結果になっています。オフセット部分は変化していない点に注目してください。

使用例2:分を減算する

次に、負の値を引数に渡して分を減算する例を紹介します。

using System;
public class Demo {
    public static void Main() {
        DateTimeOffset dateTimeOffset = new DateTimeOffset(2019, 08, 10, 4, 20, 10, new TimeSpan(-5, 0, 0));
        Console.WriteLine("DateTimeOffset (before subtracting minutes) = {0}", dateTimeOffset);
        DateTimeOffset res = dateTimeOffset.AddMinutes(-15);
        Console.WriteLine("DateTimeOffset (after subtracting minutes) = {0}", res);
    }
}

出力結果

上記のコードを実行すると、次のような出力が得られます。

DateTimeOffset (before subtracting minutes) = 8/10/2019 4:20:10 AM -05:00
DateTimeOffset (after subtracting minutes) = 8/10/2019 4:05:10 AM -05:00

-15を指定することで、元の時刻から15分が差し引かれ、4時5分10秒となっています。

まとめ

DateTimeOffset.AddMinutes()メソッドを使用すると、UTCオフセットを保持したまま日時に分単位の加算・減算を行えます。正の値で加算、負の値で減算というシンプルな使い分けができるため、スケジュール管理やログ処理など、タイムゾーンを意識したアプリケーション開発で活用できます。

  1. C#のDateTimeOffset.Compare()メソッドの使い方をわかりやすく解説

    C#のDateTimeOffset.Compare()メソッドは、2つのDateTimeOffsetオブジェクトを比較し、最初の日時が2番目の日時よりも「前」なのか、「同じ」なのか、それとも「後」なのかを判定するための静的メソッドです。このメソッドは整数値(int型)を返し、その戻り値によって比較結果が以下のように表されます。0未満 − val1がval2より早い日時である場合0 − val1とval2が同一の日時である場合0より大きい − val1がval2より遅い日時である場合構文DateTimeOffset.Compare()メソッドの構文は以下の通りです。public static i

  2. 【C#入門】DateTimeOffset.AddYears()メソッドの使い方を徹底解説

    C#のDateTimeOffset.AddYears()メソッドは、現在のDateTimeOffsetインスタンスが表す日時に、指定した年数を加算した新しいDateTimeOffset値を返すメソッドです。元のインスタンスの値は変更されず、計算結果が新しいオブジェクトとして返される点に注意してください。構文AddYears()メソッドの構文は以下のとおりです。public DateTimeOffset AddYears (int val);引数valには、加算する年数を整数で指定します。負の値を指定すると、年数を減算(過去にさかのぼる)ことができます。主な特徴戻り値は新しいDateTimeOf