2013-01-03 60 views
-2

我想從日期時間變量中獲取日期部分。Convert.ToDateTime「字符串未被識別爲有效的日期時間」錯誤

documentation for currentculture,我試着用:

currentThread.CurrentCulture = new CultureInfo(currentThread.CurrentCulture.Name); 
currentThread.CurrentUICulture = new CultureInfo(currentThread.CurrentCulture.Name); 

Convert.ToDateTime(myDT.ToShortDateString(), System.Threading.Thread.CurrentThread.CurrentUICulture); 

但我得到了一個「..not識別爲有效的日期時間字符串」異常。我的問題是,如果我設置一個特定的currentculture(在這種情況下「ES-MX」),怎麼可能解析()方法失敗?我錯過了什麼?

我可以解決做myDT.ToString(「yyyy-MM-dd」)的問題。但我想了解這種行爲。

See this image,是我的觀察窗口的截圖。同樣,我的問題不是關於如何獲取日期部分,而是關於爲什麼我得到例外。謝謝!

+11

您可以通過執行myDT.Date來解決它。 –

+0

用oded表示的日期時間變量發佈您的例外.. – Pranav

+0

Convert.ToDateTime()的第一個參數需要一個日期。 ToShortDateString()輸出一個字符串。是的,你可以先將它格式化爲字符串,然後回到日期,但是作爲@RuneFS,現在Oded說,只需使用.Date –

回答

2

我想從日期時間變量只得到日期部分。

myDateTime.Date 

@Rune FS commented

該屬性在DateTime結構中定義 - 絕對不需要轉換爲字符串並返回。

+0

我知道這也解決了我的問題。但那不是我的問題。我的問題是怎麼可能的解析字符串和演員日期時間再次失敗,考慮到我設置文化......謝謝 – Luferogo

+0

@Luferogo - 什麼'ToShortDateString()'回饋? 'Convert.ToDateTime'似乎失敗了。 – Oded

+0

輸出結果爲「2013年3月/ 2013年」。好奇的是,任何其他月份都運行良好......!舉個例子,「01/ene/2013」​​運行良好..我認爲這與文化有關。 – Luferogo

相關問題