C# 时间跨度超过23:59:59
我正在开发一个小应用程序来读取XML文件并在网格上显示值。要显示的某些类型的值是C# 时间跨度超过23:59:59,c#,timespan,C#,Timespan,我正在开发一个小应用程序来读取XML文件并在网格上显示值。要显示的某些类型的值是TimeSpan 它工作正常,直到下面的“TimeSpan currentTime”不超过23:59:59。例如,如果XML数据description.Attributes.GetNamedItem(“time”).Value等于25:05:00,我得到的TimeSpan等于25.00:05:00。因此,不是25小时5分钟,而是25天5分钟 有人能帮我吗 TimeSpan currentTime; if (!Time
TimeSpan
它工作正常,直到下面的“TimeSpan currentTime”不超过23:59:59。例如,如果XML数据description.Attributes.GetNamedItem(“time”).Value
等于25:05:00,我得到的TimeSpan
等于25.00:05:00。因此,不是25小时5分钟,而是25天5分钟
有人能帮我吗
TimeSpan currentTime;
if (!TimeSpan.TryParse(description.Attributes.GetNamedItem("time").Value, out currentTime))
{
// alert parse is not good
return;
}
这是因为类将您提供的timespan解释为在一段时间内不正确(因此它恢复为天而不是小时) 该格式应为25小时:
1:01:05:00
或者这个(哪一个是首选的):
1) 如果调用
TryParse()
的三个参数形式并在第二个参数中指定CultureInfo.InvariantCulture
,是否会发生同样的情况?2) 您确定您的XML包含25:05:00
而不是25.05:00
?Timepan类存储毫秒、秒、分钟、小时和天()。你得到的似乎是一个解析问题。你能把你正在解析的字符串(/一个示例字符串)发布到那里吗?你是说1.01:05:00
?(点代替冒号)
1.01:05:00