C# 日時を計算するサンプル(加算と減算)

C#の日時を計算するサンプルです。加算と減算を行います。

目次

サンプル 日時を計算するサンプル
  TimeSpanで日時を計算するサンプル

日時を計算するサンプル

日時を計算するサンプルです。

using System;
class Test1
{
    static void Main()
    {
        // 指定日時をセット 2020/2/10 22:30:10
        DateTime dt1 = new DateTime(2020,2,10,22,30,10);

        // 2年後を求める
        Console.WriteLine(dt1.AddYears(2)); // 2022/02/10 22:30:10

        // 2ヶ月後を求める
        Console.WriteLine(dt1.AddMonths(2)); // 2020/04/10 22:30:10

        // 2日前を求める
        Console.WriteLine(dt1.AddDays(-2)); // 2020/02/08 22:30:10

        //2時間後を求める
        Console.WriteLine(dt1.AddHours(2)); // 2020/02/11 0:30:10

        //2分後を求める
        Console.WriteLine(dt1.AddMinutes(2)); // 2020/02/10 22:32:10

        //2秒後を求める
        Console.WriteLine(dt1.AddSeconds(2)); // 2020/02/10 22:30:12
    }
}

7行目は、指定日時を変数にセットしています。

10行目から日時の計算をしています。
年月日時分秒とそれぞれメソッドがあります。
引数にプラスの値を指定すると加算します。
減算する場合は、16行目のように引数にマイナス値を指定します。

以下は、MicrosoftのAddYearsメソッドのリンクです。
https://docs.microsoft.com/ja-jp/dotnet/api/system.datetime.addyears?view=netframework-4.8

TimeSpanで日時を計算するサンプル

TimeSpanで日時を計算するサンプルです。

using System;
class Test1
{
    static void Main()
    {
        // 指定日時をセット 2020/2/10 22:30:10
        DateTime dt1 = new DateTime(2020, 2, 10, 22, 30, 10);

        // 5日と30分をセット
        TimeSpan ts1 = new TimeSpan(5, 0, 30, 0);

        // 足し算
        Console.WriteLine(dt1 + ts1); // 2020/02/15 23:00:10

        // 引き算
        Console.WriteLine(dt1 - ts1); // 2020/02/05 22:00:10
    }
}

7行目は、指定日時を変数にセットしています。
10行目は、TimeSpan構造体です。1つめの引数は日数で以降は時間、分、秒です。
例では、5日と30分を指定しています。
13行目は、足し算をして日時を求めています。
16行目は、引き算をして日時を求めています。

以下は、MicrosoftのTimeSpan構造体のリンクです。
https://docs.microsoft.com/ja-jp/dotnet/api/system.timespan?view=netframework-4.8

関連の記事

C# 現在日時の取得と表示形式のサンプル

△上に戻る