C#字串轉DateTime
阿新 • • 發佈:2018-12-12
廢話不多說,直接貼程式碼
//將此時的時間轉化成例如20180808型別的字串 string strDate = DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString("00") + DateTime.Now.Day.ToString("00"); //若執行如下程式碼會發生轉換錯誤問題 DateTime dTime = convert.ToDateTime(strDate); //執行如下程式碼可解決問題 DateTime dTime = DateTime.ParseExact(strDate , "yyyyMMdd", System.Globalization.CultureInfo.InvariantCulture);
本著做人應該有的 好學 精神 所以藉此機會來學習一下 DateTime.ParseExact() 這個方法: 轉到定義瞅一眼
// 摘要: // 使用指定的格式和區域性特定格式資訊,將日期和時間的指定字串表示形式轉換為其等效的 System.DateTime。字串表示形式的格式必須與指定的格式完全匹配。 // // 引數: // s: // 包含要轉換的日期和時間的字串。 // // format: // 用於定義所需的 s 格式的格式說明符。 // // provider: // 一個物件,提供有關 s 的區域性特定格式資訊。 // // 返回結果: // System.DateTime,等效於由 format 和 provider 所指定的 s 中包含的日期和時間。 // // 異常: // T:System.ArgumentNullException: // s 或 format 為 null。 // // T:System.FormatException: // s 或 format 是空字串。- 或 -s 不包含與 format 中指定的模式相對應的日期和時間。- 或 -s 中的小時組成部分和 AM/PM 指示符不一致。 public static DateTime ParseExact(string s, string format, IFormatProvider provider);
就醬,可以說是很清楚了