西元年轉民國年時,如果使用addyear(-1911)的方式,會有閏年的問題,例如2012/2/29使用addyear(-1911)會變成101/2/28,使用字串拆解的方式又過於冗長,
NET Framework有提供方便的轉換方式,來解決這問題
西元年轉民國年
System.Globalization.CultureInfo tc = new System.Globalization.CultureInfo("zh-TW");
tc.DateTimeFormat.Calendar = new System.Globalization.TaiwanCalendar();
DateTime dt = DateTime.Now;
Response.Write(dt.ToString(tc));
西元年日期驗證
DateTime dt = DateTime.Now;
DateTime.TryParse("2015/7/21", out dt) ;
民國年轉西元年
System.Globalization.CultureInfo tc = new System.Globalization.CultureInfo("zh-TW");
tc.DateTimeFormat.Calendar = new System.Globalization.TaiwanCalendar();
Response.Write(DateTime.Parse("104/7/21",tc).Date.ToString("d"));
民國年日期驗證
System.Globalization.CultureInfo tc = new System.Globalization.CultureInfo("zh-TW");
tc.DateTimeFormat.Calendar = new System.Globalization.TaiwanCalendar();
DateTime result;
try
{
result = DateTime.ParseExact("104/7/21", "d", tc);
Response.Write("Ok");
}
catch (FormatException)
{
Response.Write("Wrong");
}
沒有留言:
張貼留言