DateTime.ParseExact(String String IFormatProvider)

使用指定的格式和特定​​於區域性的格式資訊將指定的日期和時間字串表示形式轉換為其 DateTime 等效形式。字串表示的格式必須與指定的格式完全匹配。

將特定格式字串轉換為等效的 DateTime

假設我們有一個特定於文化的 DateTime 字串 08-07-2016 11:30:12 PM 作為 MM-dd-yyyy hh:mm:ss tt 格式,我們希望它轉換為等效的 DateTime 物件

string str = "08-07-2016 11:30:12 PM";
DateTime date = DateTime.ParseExact(str, "MM-dd-yyyy hh:mm:ss tt", CultureInfo.CurrentCulture);

將日期時間字串轉換為等效的 DateTime 物件,而不使用任何特定的文化格式

假設我們有一個 dd-MM-yy hh:mm:ss tt 格式的 DateTime 字串,我們希望它轉換為等效的 DateTime 物件,沒有任何特定的文化資訊

string str = "17-06-16 11:30:12 PM";
DateTime date = DateTime.ParseExact(str, "dd-MM-yy hh:mm:ss tt", CultureInfo.InvariantCulture);

將日期時間字串轉換為等效的 DateTime 物件,而不使用任何格式的特定文化格式

假設我們有一個日期字串,例如'23 -12-2016’或'12 / 23/2016’,我們希望它轉換為等效的 DateTime 物件,沒有任何特定的文化資訊

   string date =  '23-12-2016' or date = 12/23/2016';
   string[] formats = new string[] {"dd-MM-yyyy","MM/dd/yyyy"}; // even can add more possible formats.
   DateTime date = DateTime.ParseExact(date,formats, CultureInfo.InvariantCulture,DateTimeStyles.None);

注意:需要為 CultureInfo 類新增 System.Globalization