TimeSpan不会解析一些字符串

时间:2013-03-25 04:20:52

标签: c# parsing timespan

我不确定这里发生了什么,但它会接受一些时间跨度,而不是其他时间。有人能告诉我一种方法,以99:59:59的格式检查虚拟时间跨度。

//50:30:00 is bad
//50:20:00 is good

try
{
    TimeSpan ts = new TimeSpan();
    ts = TimeSpan.Parse("50:30:00");
}
catch //(Exception ex)
{
    MessageBox.Show("bad time span");
}

1 个答案:

答案 0 :(得分:6)

默认情况下,Timespan.Parse方法假定时间为格式为Days:Hours:Minutes的int。由于一天中的时间不能超过24小时,因此当Hours分量大于24时,它会抛出。

我不得不承认,Timespan.Parse不会为你做转换,我有点惊讶。我有预感,这与事实并非所有日子都是24小时。