2012-05-09 60 views
2

我已經嘗試過所有DateTime.Parse和ParseExact的組合,它們不起作用。我不斷收到「{」字符串未被識別爲有效的DateTime。「}」這兩個函數。我也嘗試過Convert.ToDateTime並且不起作用。只是爲了檢查我是不是在做夢,我寫了下面的代碼:VB.Net DateTime.Parse和ParseExact不起作用

Dim ExpiryDate As Date = System.DateTime.Now 
Dim provider As New CultureInfo("en-US") 
Try 
    Dim strDate As String = Convert.ToString(ExpiryDate) 
    ExpiryDate = DateTime.ParseExact(strDate, "mmddyy", provider) 
Catch ex as exception 
    'ex here says "{"String was not recognized as a valid DateTime."}" 
End Try 

我只想把字符串以這種形式MM-DD-YYYY或MM/DD/YYYY並將其轉換爲一個日期,以便我可以測試(大於)另一個日期。任何幫助讚賞。

回答

5

首先,格式字符串需要匹配被解析的字符串。其次,格式字符串中的「m」代表分鐘,而不是月。如果您的日期格式爲mm-dd-yyyy,請嘗試DateTime.ParseExact("04-08-2011", "MM-dd-yyyy", provider)

+0

Thanx much!我的印象是格式字符串,即「MM-dd-yyyy」應該格式化結果而不是輸入字符串。事後看來,這對我來說很愚蠢,因爲該函數如何知道輸入內容?咄! { - ) – Chiwda