我正在尝试向 c# datetime 对象添加一个表示时间的字符串,但我收到一个异常,显示"格式无效">
details.UTCEventDate.Add(TimeSpan.Parse(details.UTCEventTime));
其中'细节。UTCEventTime"类似于"4:45AM">
AM
和PM
值不容易用TimeSpan.Parse
解析,因为TimeSpan
技术上表示时间间隔的长度,而不是一天中的时间本身。
但是,您可以使用DateTime.Parse
方法来解析此值,然后使用 TimeOfDay
属性作为TimeSpan
检索时间部分:
details.UTCEventDate.Add( DateTime.Parse( details.UTCEventTime ).TimeOfDay );
如果要使用 ParseExact
更精确地指定格式,则可以使用 h:mmtt
格式字符串,其中 tt
表示AM
和PM
部分。
TimeSpan.Parse
不喜欢字符串中的"AM/PM"。
你能做的是
details.UTCEventDate.Add(DateTime.Parse(details.UTCEventTime).TimeOfDay)