执行以下操作时,我正在使用.NET 4并且输入字符串格式错误不正确:
TimeSpan dropTime=TimeSpan.ParseExact("01:33 PM", "hh:mm tt", CultureInfo.InvariantCulture);
我做错了什么?我也试过TT,以防万一,但是这样做。否则我的格式似乎匹配?
答案 0 :(得分:7)
tt
不是TimeSpan
的有效格式说明符,可以看作on MSDN。
您要解析的是时间而不是 TimeSpan - PM
指定一天中的某个时间,而不是时间间隔(即{ {1}}代表)并且无法由TimeSpan
直接解析。
您可以先使用TimeSpan
对其进行解析,然后从中获取DateTime
:
TimeSpan
答案 1 :(得分:3)
您必须改为使用班级DateTime
:
TimeSpan dropTime=DateTime.ParseExact("01:33 PM", "hh:mm tt", CultureInfo.InvariantCulture).TimeOfDay;
答案 2 :(得分:0)
只需使用DateTime对象,请参阅我的示例代码:
DateTime dropTime = new DateTime();
DateTime.TryParse("01:33 PM", out dropTime);
这会将你的字符串解析为日期时间。
祝你好运, Gregor Primar