My studying notebook

2008/06/09

[備忘錄] C# Datetime 處理小技巧

6/09/2008 07:30:00 PM Posted by Unknown 2 comments
在撰寫程式的時候難免會遇到處理時間的時候,且有時候因應特殊需求還得進行較為複雜的日期計算。不過只要把握一點點的小技巧其實就可以完成日期的選定。

System.DateTime dt = System.DateTime.Now;
System.DateTime ThisMonBeginDay = new System.DateTime(dt.Year, dt.Month, 1);
System.DateTime UltMonEndDay = ThisMonBeginDay.AddDays(-1);
System.DateTime ThisMonEndDay = ThisMonBeginDay.AddMonths(1).AddDays(-1);

利用System.DateTime Contructor找出本月月初的日期。上月月底 = 本月月初 - 1天;本月月底 = 本月月初 + 1個月 - 1天。如此利用簡單的概念即可算出日期。

另外System.Globalization命名空間中提供了2個類別:TaiwanCalendarTaiwanLunisolarCalendar

System.DateTime dt = System.DateTime.Now;
TaiwanCalendar tc = new TaiwanCalendar();
int Year = tc.GetYear(dt);
// 97
int Mon = tc.GetMonth(dt);
// 6
int day = tc.GetDayOfMonth(dt);
// 9

TaiwanLunisolarCalendar tlc = new TaiwanLunisolarCalendar();
int LuniYear = tlc.GetYear(dt);
// 97
int LuniMon = tlc.GetMonth(dt);
// 5
int Luniday = tlc.GetDayOfMonth(dt);
// 6

綜合上述可以得到以下這張圖

2 comments: