DateTimePicker 日期轉換為民國日期
Posted by minying 於 22 四月, 2009
上一篇已提到改變 DateTimePicker 的顯示為民國年樣式,有時為了在前端使用西元年樣式,但寫入資料庫時,需轉換為民國年的需求,此時資料就必須轉換。一般我遇到的情形是將「2009年04月22日」這樣的日期格式轉為「980422」。我想最簡單的方式就是轉成文字時指定一下格式,但在此之前,當然要把西元年減掉1911的值,才是民國年囉!
Dim STDay As String = DateTimePicker1.Value.ToString(“yyyyMMdd")
Dim D1 As String = (Integer.Parse(STDay) – 19110000).ToString
當然如果需要自訂格式如「民國年 – 月 – 日」,則必須自行拆解西元年減1911了。
Dim STDay As Date = DateTimePicker1.Value
Dim yy As String = (STDay.Year – 1911).ToString
Dim mm As String = STDay.Month.ToString(“00″)
Dim dd As String = STDay.Day.ToString(“00″)
MsgBox(yy & " – " & mm & " – " & dd)
Alex said
不用那麼麻煩拆解喔..
只要用 System.Globalization.TaiwanCalendar() 就可以解成民國年.不用去減1911
dim tc as new System.Globalization.TaiwanCalendar()
msgbox( “民國" & tc.GetYear(STDay) & “年" & tc.GetMonth(STDay) & “月" & tc.GetDayOfMonth(STDay) & “日" )
minying said
感謝ALEX提供