一般日期轉換,我都會用DateTime.TryParse來轉換,但如果不注意的話,會發生日期完全不對或失敗的問題…
日期不對舉凡像有些系統會使用05/07/2013這種格式,心裡想的是七月五號,但轉換後會變成五月七號,另外一種情況就是自訂格式轉換的問題,今天收到客戶送過來的日期格式如下"2013/07/22 @ 20:00:15:4324",如果用DateTime.TryParse就會回傳false,這時就要用DateTime.TryParseExact():
//特殊格式
string DateStr = "2013/07/22 @ 20:00:15:4324";
DateTime _date;
//錯誤的轉換方式,回傳False
if (DateTime.TryParse(DateStr, out _date))
{
//TryParse轉換成功
}
//正確轉換方式
if(DateTime.TryParseExact(DateStr, "yyyy/MM/dd @ HH:mm:ss:ffff", null, System.Globalization.DateTimeStyles.None, out _date))
{
//TryParseExact轉換成功
}