转换为DateTime“05:10:15D + 0”

时间:2012-11-20 11:41:39

标签: c# .net datetime datetime-format reuters

我在将"05:10:15D+0"转换为DateTime时遇到问题。路透社的数据类型为“bftime”,时间为GMT / UTC。

我不想将其子串,因为我有多个市场数据提供商,如果市场尚未开放,则将此值仅发送 日期。

以下是我试图转换的方式.ToDateTime

MDLastTick =  Convert.ToDateTime(LastTick);

例外:

  

字符串未被识别为有效的DateTime。从索引8开始有一个未知单词。

2 个答案:

答案 0 :(得分:1)

你所拥有的不是日期时间,因为它缺少日期部分。您只有时间,因此请考虑使用TimeSpan.Parse

答案 1 :(得分:0)

您可以使用此正则表达式来获取时间组件:\d{1,2}:\d{1,2}:\d{1,2}(或者只使用前8个字符作为子字符串) - 然后datetime.parse匹配时间。你知道它总是UTC,所以你可以忽略D + 0。

然而,这只是一个时间,而不是日期时间。