3

如何从日期和时间中仅提取小时并将其转换为整数以便我可以与整数进行比较?

例如

datetime = 2013-02-01 10:24:36.000 即日期和时间数据类型

然后

小时 = 只需要一小时,即 10

然后

比较小时 = Convert.ToInt32(time);

我已经尝试过 item.StartTime ,它是日期和时间:

var time = String.Format("{HH}", (DateTime)item.StartTime);
var hour = Convert.ToInt32(time);

错误:

Input string was not in a correct format.
4

4 回答 4

4

我想你只是在寻找DateTime.Hour

int hour = item.StartTime.Hour;

...但它的值是 10,而不是 24。(item.StartTime.Minute会给你 24。)

根据经验,避免字符串转换,除非它们是您要完成的任务的固有部分。

于 2013-02-27T07:24:18.870 回答
4

这个怎么样?

DateTime dt = DateTime.Now;
int hour = dt.Hour;

习惯于在 MSDN 文档中查找这些内容是值得的。一旦你习惯了它就很好。对于DateTime成员列表,我只需 google System.DateTime 并点击顶部的 MSDN 链接(通常是第一个链接)。

http://msdn.microsoft.com/en-us/library/system.datetime.aspx

于 2013-02-27T07:24:41.543 回答
1

如果您想将此与另一个日期进行比较,您也许可以省去头疼,只需使用DateTime.Compare.

public static int Compare(
    DateTime t1,
    DateTime t2
)

http://msdn.microsoft.com/en-us/library/system.datetime.compare.aspx

于 2013-02-27T07:26:05.457 回答
0

//单行

整数时间 = 日期时间.现在.小时;

于 2017-02-02T05:38:16.800 回答