2013-07-08 97 views
1

我有一個字符串7/24/2013 6:05:00 PM並希望將其轉換爲DateTime對象。 我使用使用ParseExact方法無法將字符串轉換爲DateTime

的DateTime newDate = DateTime.ParseExact(日期, 「M/d/yyyy的H:MM:SS TT」, System.Globalization.CultureInfo.InvariantCulture);

但newDate對象是09.07.2013 06:45:00。我想在字符串版本上面看到它。

你知道爲什麼它沒有轉換我想要的格式或任何意見將是偉大的如何我可以呈現它作爲日期時間對象。

謝謝

+0

日期字符串是2013年7月13日下午6時05分00秒 –

+0

說實話解析既InvariantCulture的,對我的CurrentCulture工作。如果您可以控制日期時間格式,則可以始終使用國際格式,然後使用標準DateTime.Parse() E.g. YYYY-MM-DD HH:MM:SS – codemonkeh

+0

如果您深入瞭解新日期屬性,您是否可以確認日期和月份的值?也許你的顯示格式風格與你試圖解析的風格不同。 – codemonkeh

回答

1

由於您的日期已經是一種常見的格式風格,你應該嘗試使用當前的UI文化解析,你的情況EN-US。

E.g.

DateTime.ParseExact(date,"M/d/yyyy h:mm:ss tt", System.Globalization.CultureInfo.CurrentCulture); 

通過使用InvariantCulture解析是在解析字符串時忽略所有文化線索。

欲瞭解更多信息:http://msdn.microsoft.com/en-us/library/dd465121.aspx

+0

我正在獲取String未被識別爲有效的DateTime。如果我使用currentculture,則爲異常。 System.Globalization.CultureInfo(「en-US」)也提供了我不想要的相同格式 –