我正在尝试将字符串解析为分钟:秒:毫秒的时间跨度格式。所以00:00:02
我希望2
毫秒。但它解析为20
。
const string tmp = "00:00:02";
var t1 = TimeSpan.Parse(tmp);
// minutes: seconds: milliseconds
var t2 = TimeSpan.ParseExact(tmp, @"m\:s\:ff", System.Globalization.CultureInfo.InvariantCulture);
为什么毫秒 20 而不是 2 ?
答案 0 :(得分:1)
为什么毫秒20而不是2?
由于1 sec = 1000 ms
而不是像秒或分钟那样60,因此它0.020 = 20/1000
,2ms将是0.002 = 2/1000
。
答案 1 :(得分:0)
稍微修改了你的代码。以下是工作代码:
const string tmp = "00:00:002";
var t1 = TimeSpan.Parse(tmp);
// minutes: seconds: milliseconds
var t2 = TimeSpan.ParseExact(tmp, @"m\:s\:fff", System.Globalization.CultureInfo.InvariantCulture);