C#における日時の簡単な操作

1427 ワード

C#の日付時刻の簡単な操作を共有します.
(1).2つのDateTimeのサイズを比較
DateTime dt1 = Convert.ToDateTime("2010/11/25 20:53:43");
DateTime dt2 = Convert.ToDateTime("2010/11/26 19:24:53");
int i = DateTime.Compare(dt1, dt2);

最後のiの結果は-1...だからdt 1
dt 2の場合i=1
(2).2つのDateTimeの差を計算する
DateTime dt1 = Convert.ToDateTime("2010/11/25 20:53:43");
DateTime dt2 = Convert.ToDateTime("2010/11/25 20:53:43");
DateTime dt3 = Convert.ToDateTime("2010/11/25 20:53:43");
TimeSpan diff1 = dt2.Subtract(dt1);
DateTime diff2 = dt3.Subtract(dt1);
TimeSpan diff3 = dt2 - dt3;
DateTime diff4 = dt1 - dt2;

結果:
diff1="185.14:47:00";(185日14時間47分0秒)
diff2="1996/4/9 17:55:00";
diff3="55.04:20:00";(55日4時間20分0秒)
diff4="1996/4/9 17:55:00";
(3).日付から日数を減算または加算した日付を計算します.
TimeSpan ts = new TimeSpan(40, 0, 0, 0); 
DateTime dt1 = DateTime.Now.Subtract(ts); 
DateTime dt2 = DateTime.Now.Add(ts); 
string str1 = ts.Days.ToString() + "   " + dt1.ToString("yyyy MM dd "); 
string str2 = ts.Days.ToString() + "   " + dt2.ToString("yyyy MM dd ");

結果:
str 1=「40日前は2010年10月16日」;
str 2=「40日後は2011年01月04日」;
PS:(計算日は2010年11月25日)