【发布时间】:2017-06-01 18:35:58
【问题描述】:
我想将文字字符串01:4:54:28 解析为时间跨度,但出现错误
输入的字符串格式不正确
代码:
TimeSpan t = TimeSpan.Parse(dt.Rows[i]["karkard"].ToString());
【问题讨论】:
-
var ts = TimeSpan.Parse("0:4:54:28");适合我;您是否可能在具有不同时间格式的不同文化中跑步?另外,你确定字符串是"0:4:54:28"吗?提示:将其读入一个变量,以便您对其进行调试:var s = dt.Rows[i]["karkard"].ToString(); TimeSpan t = TimeSpan.Parse(s);。注意:0.04:54.28在这里会更“正常”。 -
你也可以使用 TimeSpan.TryParse 代替
-
dt.rows[i]["karkard"]的值是多少?调用ToString()然后解析结果几乎总是一个坏主意......通常最好只转换为正确的类型并使用它。 -
该 karkard 列中的对象是什么类型?
-
换句话说,
dt.Rows[i]["karkard"].GetType().FullName说什么?