1. 程式人生 > 實用技巧 >C#計算兩個時間年份月份差

C#計算兩個時間年份月份差

//C#計算兩個時間年份月份差

DateTime dt1 = Convert.ToDateTime("2008-8-8");

DateTime dt2 = System.DateTime.Now;

int Year = dt2.Year - dt1.Year;

int Month = (dt2.Year - dt1.Year) * 12 + (dt2.Month - dt1.Month);

 

計算兩個日期的時間間隔

TimeSpan ts1=new   TimeSpan(DateTime1.Ticks);

TimeSpan ts2=new   TimeSpan(DateTime2.Ticks);

TimeSpan ts=ts1.Subtract(ts2).Duration();

dateDiff=ts.Days.ToString()+"天"

+ts.Hours.ToString()+"小時"

+ts.Minutes.ToString()+"分鐘"

+ts.Seconds.ToString()+"秒";

 

TimeSpan值包含了許多屬性與方法,用於訪問或處理一個TimeSpan值

下面的列表涵蓋了其中的一部分:

Add:與另一個TimeSpan值相加。

Days:返回用天數計算的TimeSpan值。

Duration:獲取TimeSpan的絕對值。

Hours:返回用小時計算的TimeSpan值

Milliseconds:返回用毫秒計算的TimeSpan值。

Minutes:返回用分鐘計算的TimeSpan值。

Negate:返回當前例項的相反數。

Seconds:返回用秒計算的TimeSpan值。

Subtract:從中減去另一個TimeSpan值。

Ticks:返回TimeSpan值的tick數。

TotalDays:返回TimeSpan值表示的天數。

TotalHours:返回TimeSpan值表示的小時數。

TotalMilliseconds:返回TimeSpan值表示的毫秒數。

TotalMinutes:返回TimeSpan值表示的分鐘數。

TotalSeconds:返回TimeSpan值表示的秒數。

 

label1.Text = "2004-1-1 15:36:05";

label2.Text = "2004-3-1 20:16:35";

 

DateTime d1 =new DateTime(2004,1,1,15,36,05);

DateTime d2 =new DateTime(2004,3,1,20,16,35);

TimeSpan d3 = d2.Subtract(d1);

label3.Text = "相差:"

+d3.Days.ToString()+"天"

+d3.Hours.ToString()+"小時"

+d3.Minutes.ToString()+"分鐘"

+d3.Seconds.ToString()+"秒";

 

int interval = new TimeSpan(dtThis.Ticks - dtLast.Ticks).Days;

 

DateTime t1 = Convert.ToDateTime("2015-1-6"); 
DateTime t2 = Convert.ToDateTime("2015-1-16"); 
int day=Math.Abs(((TimeSpan)(t1 - t2)).Days);