c# - 获取两次之间的时间,时间跨度为一小时

标签 c# datetime timespan

我有两次喜欢

Time A:09:00 AM

时间 B:06:00 PM 我想获得时间 A 和时间 B 之间的总小时数 并以 1 小时的时间跨度显示 例如:

09:00 AM

10:00 AM

11:00 AM

12:00 PM

upto

06:00 PM

最佳答案

我想你需要类似的东西;

DateTime dt1 = DateTime.Parse("09:00 AM");
DateTime dt2 = DateTime.Parse("06:00 PM");
while (dt1 <= dt2)
{
     Console.WriteLine(dt1.ToString("hh:mm tt"));
     dt1 = dt1.AddHours(1);
}

输出将是;

09:00 AM
10:00 AM
11:00 AM
12:00 PM
01:00 PM
02:00 PM
03:00 PM
04:00 PM
05:00 PM
06:00 PM

这是一个 demonstration .

很抱歉,我不明白您为什么对这种情况下的 TimeSpan 感兴趣。这是一个持续时间。您需要使用 DateTime 获取每小时的时间。

关于c# - 获取两次之间的时间,时间跨度为一小时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22399183/

相关文章:

c# - WPF C# 绑定(bind)代码 - 为什么这个简单的示例不起作用?

javascript - Google Apps脚本中的本地时间与脚本时间和触发时间

c# - 奇怪的 TimeSpan.ToString 输出

c# - 时间跨度为微秒?

c# - 如何以编程方式引发文本框 TextChangedEvent

c# - WPF 中的选项卡式文档界面仅使用板载方式?

php - 使用 PHP 按日期过滤 SQL 结果

TimeSpan 到友好的字符串库 (C#)

c# - 绑定(bind)到静态属性不响应 PropertyChanged

java - JODA api 在时区之间转换日期