2012-10-11 41 views
1

我試圖解析以下字符串爲DateTime:用ParseExact解析DateTime,我錯過了什麼?

「04-03-2008-16-18-08」

爲了簡化問題,我寫這個單元測試,它總是拋出異常「System.FormatException:String未被識別爲有效的DateTime」。

[TestMethod] 
    public void TemporaryDateTimeParseTest() 
    { 
     DateTime.ParseExact("04-03-2008-16-18-08", "dd-MM-yyyy-hh-mm-ss", null); 
    } 

格式應該是日 - 月 - 年 - 小時 - 分鐘(從上面應該可以看出)。根據MSDN的描述,這似乎是正確的。我錯過了什麼?

我見過有人說ParseExact是尷尬的,如果這是錯誤的方法使用我怎樣才能使用常規的Parse方法來獲取這種格式?

回答

2

你在利用小時爲12小時格式,而不是24小時格式。將您的呼叫更改爲:

DateTime.ParseExact("04-03-2008-16-18-08", "dd-MM-yyyy-HH-mm-ss", null);