我有一個來源,後者的日期來此字符串形式:如何使用特定格式將字符串解析爲DateTime?
Sat Sep 22 13:15:03 2018
有一個簡單的方法,我可以解析到在C#中的DateTime?我試着日期時間。(嘗試)解析,但它似乎並沒有認識到這一點的具體格式...
我有一個來源,後者的日期來此字符串形式:如何使用特定格式將字符串解析爲DateTime?
Sat Sep 22 13:15:03 2018
有一個簡單的方法,我可以解析到在C#中的DateTime?我試着日期時間。(嘗試)解析,但它似乎並沒有認識到這一點的具體格式...
這工作:
DateTime dt = DateTime.ParseExact ("Sat Sep 22 13:15:03 2018", "ddd MMM d HH:mm:ss yyyy", null)
此代碼需要你的日期字符串並應用格式創建一個DateTime目的。
CultureInfo provider = CultureInfo.InvariantCulture;
string dateString = "Sat Sep 22 13:12:03 2018";
string format = "ddd MMM dd HH':'mm':'ss yyyy";
DateTime result = DateTime.ParseExact(dateString, format, provider);
這是縮寫的月份名稱後失蹤一個月的數字一天。看到我的答案。 – Gonzalo 2009-12-07 18:46:38
你是對的我修好了,謝謝。 – 2009-12-07 19:17:25
您應該更喜歡DateTime.ParseExact
和TryParseExact
;這些方法可讓您在程序中指定預期的格式。
DateTime.Parse
和TryParse
方法很危險,因爲它們接受運行代碼的機器上配置的當前日期/時間格式 - 用戶可以從默認設置更改 - 還有一些文化中性格式。換句話說,用戶可以更改控制面板中的設置並打破Parse
/TryParse
。
var str = "Sat Sep 22 13:15:03 2018";
var date = DateTime.ParseExact(str, "ddd MMM dd HH:mm:ss yyyy", CultureInfo.InvariantCulture);
非常感謝!應該找到它自己... – 2009-12-09 17:51:53