日期:2014-05-17  浏览次数:20779 次

C#中日期时间的简单操作
分享下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...所以说dt1<dt2..当dt1=dt2的时候i=0..当dt1>dt2的时候i=1
(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日");


结果:
str1="40天前是2010年10月16日";
str2="40天后是2011年01月04日";
PS:(计算日期为2010年11月25日)