Minying's Blog

Just another WordPress.com weblog

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)

2 回應 to “DateTimePicker 日期轉換為民國日期”

  1. Alex said

    不用那麼麻煩拆解喔..
    只要用 System.Globalization.TaiwanCalendar() 就可以解成民國年.不用去減1911
    dim tc as new System.Globalization.TaiwanCalendar()
    msgbox( “民國" & tc.GetYear(STDay) & “年" & tc.GetMonth(STDay) & “月" & tc.GetDayOfMonth(STDay) & “日" )

發表留言