【发布时间】:2011-06-27 16:30:12
【问题描述】:
如何获得两个日期时间变量之间的总小时数?
date1=1/1/2011 12:00:00
date2=1/3/2011 13:00:00
datetime date1 ;
datetime date2;
int hours=(date1.date2).hours;
输出为“1”,但我想要两个日期之间的总小时差,即 49 小时
谢谢
【问题讨论】:
如何获得两个日期时间变量之间的总小时数?
date1=1/1/2011 12:00:00
date2=1/3/2011 13:00:00
datetime date1 ;
datetime date2;
int hours=(date1.date2).hours;
输出为“1”,但我想要两个日期之间的总小时差,即 49 小时
谢谢
【问题讨论】:
使用TotalHours 代替Hours。请注意,结果是 double - 您可以将其转换为 int 以获得 整个 小时数。 (如果结果是否定的,请检查您想要的行为......)
来自Hours 的文档:
属性值:当前 TimeSpan 结构的小时部分。返回值范围从 -23 到 23
您不想要小时组件 - 您想要整个时间跨度,以小时表示。
【讨论】:
DateTime而不是一个字符串,我建议你开始一个新问题。
int hours = (int) (date2 - date1).TotalHours;
【讨论】:
DateTime date1 = new DateTime(2011, 1, 1, 12, 0, 0);
DateTime date2 = new DateTime(2011, 1, 3, 13, 0, 0);
TimeSpan ts = date2 - date1;
double hours = ts.TotalHours;
【讨论】: