header
CodePanic! > C#.NET Tips > 今ここ

■2つの日付の差分(あるいは経過日時)を取得する

TimeSpan構造体を使います。
2つの日付の差の時間を計算で求めたり。あるいは
ある時間から、ある時間が経過した時間を求めたりします。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            // 現在時刻
            DateTime now = DateTime.Now;

            // 任意の時刻
            DateTime time1 = new DateTime(2000, 1, 1, 0, 0, 0);

            // その差を求める
            TimeSpan ts1 = now.Subtract(time1); // 関数でもいいし
            TimeSpan ts2 = now - time1;         // -演算子でも同じ結果が得られる

            Console.WriteLine("現在時刻との差:"+ ts1.ToString());

            // 現在時刻から1時間後の時間を求める場合
            DateTime time2 = DateTime.Now.AddHours(1);
            Console.WriteLine("現在時刻から1時間後の時刻は:" + time2.ToString());
        }
    }
}

【結果】

現在時刻との差:3837.23:00:19.5000000
現在時刻から1時間後の時刻は:2010/07/05 0:00:19





zFCodePress C#vO~OTips


Copyright © 2008.07 - shougo suzaki
ゥRN\Agbvy[WB