2012-05-01 134 views
0

我想查看一個字符串是否是有效的日期。由於日期格式爲「2011-7-17 23:18:52」,因此我遇到了麻煩。我測試,像這樣:DateTime.TryParseExact和解析多個日期格式

String lstrTime = "2011–7–17 23:18:52"; 
DateTime datevalue; 
CultureInfo enUS = new CultureInfo("en-US"); 
if (DateTime.TryParseExact(lstrTime, "yyyy-MM-dd hh:mm:ss", enUS, 
        DateTimeStyles.None, out datevalue)) 
         { 
          rtxtOutput.Text += "Valid datetime: " + lstrTime; 
         } 

我想我有麻煩的原因是因爲日期只能有1M的值或者2 MM幾個月。我有批量數據要處理,並且將M更改爲MM不會發生。

編輯:我已經嘗試了所有建議的鏈接,也許它可能是不承認一個24小時時鐘的CultureInfo(問號)

+1

FWIW,當我複製你的代碼時,'lstrTime'中的連字符是字符代碼8211; 「yyyy-MM-dd hh:mm:ss」中的連字符是字符代碼45.由於TryParseExact調用失敗。 –

+0

真棒,感謝幫助我的所有貢獻者! – kevp

回答

2

您需要使用24小時的時間,這是一個大寫的H,「YYYY-MM -dd HH:mm:ss「。