我知道這已被問了很多次,但似乎沒有涉及我的問題(所有答案指定另一個日期時間格式比給我的問題):TryParse DateTime c#dd/mm/yyyy hh:ss
Convert string(dd/MM/yyyy hh:mm) to datetime format
Converting a String to DateTime
Convert dd/MM/yyyy hh:mm:ss.fff from String to DateTime in C#
具體示例:
輸入一個字符串:24/10/2016 10:20
我打電話DateTime.TryParse(input, out output)
輸出爲DateTime
:{1/1/0001 12:00:00 AM}
爲什麼?這是我所知道的一個非常有效的輸入格式...
事情我試過/限制:
- 改變輸入有第二:
24/10/2016 10:20:00
,它的工作原理 - 使用
TryParseExact
,指定此格式,它的工作原理
但是,我不能使用這些解決方案作爲輸入是用戶定義的,我不能強制用戶堅持特定的輸入,並且想要接受任何合理格式化的日期時間。我在問題中指定的格式看起來很合理(這是Excel輸出的默認格式)。
我可以假設文化是en-US
任何幫助,將不勝感激。
更新: 第一個問題的最佳答案會引發一個例外...我不知道爲什麼這個數字甚至會增加。
更新2:
由於有很多親密的請求,這裏有一些最起碼的工作代碼(由莫希特Shrivastava從答案複製):
string dtstr = "24/10/2016 10:20";
DateTime outdt;
DateTime.TryParse(dtstr, out outdt);
Console.WriteLine(outdt);
Console.ReadLine();
如何使用正則表達式來第一次提取必要的數字? –
你能不能也請顯示你正在運行的代碼段。 –
@MohitShrivastava我正在運行的確切一段代碼是無關緊要的(我給出了一個具體的例子)。但在這裏,如果你想看到它:'DateTime.TryParse(res.StartDateString,out startdate);' – l3utterfly