将 24 小时制时间表示为 24 小时格式时间的双精度数据类型

Double Data Type representation of 24 hour time to the 24-hour Format time

全部:

以下是与我的开发环境相关的详细信息:

在我的 MongoDB 数据库中,有一个名为 BusSchedule 的集合,其中包含以下字段

BusSchedule
-Double StartTime
-Double EndTime
-String 24hourFormatStartTime
-String 24hourFormatEndTime

以下是一些可能存在的典型值

StartTime = 6.5
EndTime = 9.5
24hourFormatStartTime = "06:30"
24hourFormatEndTime = "09:30"

StartTime = 8.5
EndTime = 14.25
24hourFormatStartTime = "08:30"
24hourFormatEndTime = "14:15"

我想知道微软是否有某种现有的库可以很容易地 将 24 小时制的双精度数据类型表示形式转换为 24 小时格式时间。

StartTime = 8.5  -------translated to-----> 24hourFormatStartTime = "08:30"
EndTime = 14.25  -------translated to-----> 24hourFormatEndTime = "14:15"

StartTime = 6.5 -------translated to-----> 24hourFormatStartTime = "06:30"
EndTime = 9.5 -------translated to-----> 24hourFormatEndTime = "09:30"

我不想浪费时间编写代码来进行上述翻译。 有人可以告诉我 Microsoft 或某些第 3 方开源库是否可以满足上述要求吗?

I already can read the StartTime and EndTime values from MongoDB and place them in double variables. how can I convert it to a string version of 24-hour Format time?

然后您可以使用此双精度值生成 TimeSpan 并使用 TimeSpan.ToString() 方法和 hh\:mm 格式获取它们的字符串表示形式。

TimeSpan ts = TimeSpan.FromHours(14.25);

然后

Console.WriteLine(ts.ToString("hh\:mm")); // 14:15

请注意,此代码适用于 .Net 4.0 或更高版本。如果您有 .Net 3.5 及以下版本,则需要使用 string.Format as explained.