2013-01-04 70 views
2

我在數據庫中有一個日期時間列。格式「2013-Jan-31」的解析日期時間拋出錯誤

DateTime end_date = DateTime.ParseExact("2013-Jan-31", "yyyy-MM-dd", CultureInfo.InvariantCulture); 

爲什麼不能正常工作?

+5

不要你的意思'MMM'月份的這樣一個名字? –

+1

你不需要'「yyyy-MMM-dd」'作爲格式(注意多餘的M)嗎? –

回答

2

試試這樣;

DateTime a = DateTime.ParseExact("2013-Jan-31", "yyyy-MMM-dd", System.Globalization.CultureInfo.InvariantCulture); 
Console.WriteLine (a); 

輸出:

31.01.2013 

看從MSDN Custom Date and Time Format Strings

3

這不起作用,因爲MM將意味着1月份爲01.如果這是您嘗試解析日期的格式,請嘗試格式"yyyy-MMM-dd"

希望這會有幫助

1

MM表示一個兩位數數值月(如 「01」)。

MMM代表縮寫月份(如「Jan」)。

這意味着你需要

myObject.end_date = DateTime.ParseExact("2013-Jan-31", "yyyy-MMM-dd", System.Globalization.CultureInfo.InvariantCulture); 

字符串格式說明的列表,請參閱http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx

2

要使用你需要採取「MMM」所以這將是

myObject.end_date = DateTime.ParseExact("2013-Jan-31", "yyyy-MMM-dd", System.Globalization.CultureInfo.InvariantCulture); 
相關問題