0

我正在尝试计算两个给定时隙的时差,但答案似乎不正确我做错了什么?

我的代码: 在此处输入图像描述

由于某种原因,给出的值amFinish从 16:30 更改为 16:18:00 我不知道为什么!

如果我有一个文本框并且用户输入 16.30 我将如何获取该值并将其计算为 16hrs 和 30mins

答案应该是 05.30,但我得到的是 05.18。有什么建议吗?

4

2 回答 2

9

一小时的30%是18分钟。

16.30 小时是 16 小时和 30/100 小时的部分。

16 个半小时将是 16.50。

于 2013-03-11T22:40:36.383 回答
1

正如 Oded 解释的那样,您有十进制16.3小时数,即 16 小时 18 分钟。

如果您需要同时指定小时、分钟和秒,请使用TimeSpan带有三个参数的构造函数的重载:

TimeSpan amStart = new TimeSpan(0, 11, 0);
TimeSpan amFinish = new TimeSpan(16, 30, 0);

如果您需要将 a 转换string为 a TimeSpan,请使用以下内容:

TimeSpan amFinish = TimeSpan.ParseExact("16.30", @"hh\.mm", CultureInfo.InvariantCulture);
于 2013-03-11T22:51:05.287 回答