Theme NexT works best with JavaScript enabled

ShunNien's Blog

不積跬步,無以致千里;不積小流,無以成江海。

0%

西元年與民國年的轉換 C#

Introduction

這陣子在改一個案子的舊 code,看到使用西元年減去 1911 的方式處理年份,月份與日期不與年份處理,這樣子進行轉換的確是可行的,但是個人還是比較喜歡使用 Calendar 的方式轉換;

因為使用減法方式處理轉換,萬一順手把月份與日期一起轉換,在閏年的時候就會有日期誤差了。
errorEx

Conetent

個人習慣的處理方式還是使用 Calendar,而且要轉農民曆也方便 XD

  • 西元年轉換民國年

    1
    2
    3
    4
    5
    string sampleDate = "2012-2-29";
    DateTime dt = DateTime.Parse(sampleDate);
    CultureInfo culture = new CultureInfo("zh-TW");
    culture.DateTimeFormat.Calendar = new TaiwanCalendar();
    dt.ToString("yyy/MM/dd",culture);

    AdToTwCal

  • 民國年轉換西元年

    1
    2
    3
    4
    string sampleDate = "101/02/29";
    CultureInfo culture = new CultureInfo("zh-TW");
    culture.DateTimeFormat.Calendar = new TaiwanCalendar();
    DateTime.Parse(sampleDate,culture);

    TwCalToAd

Reference

相關的資料非常多,就列出幾個比較知名的部落客

歡迎關注我的其它發布渠道