如何只设置DateTime的时间部分

时间:2014-01-19 21:05:22

标签: vb.net date datetime

我需要设置datetime变量,但它的时间部分必须是凌晨3:00:00。 例如,如果我现在拨打getdate(),我将获得1/20/2014 3:52:03 AM。我需要将其设置为1/20/2014 3:00:00 AM。 有没有人有一个很好的片段或任何想法如何正确吗?真的很感激一些帮助。

4 个答案:

答案 0 :(得分:7)

DateTime的构造函数允许您指定小时,分钟和秒以及通常的日月和年。

Dim now As DateTime = DateTime.Now
Dim myDate = New DateTime(now.Year, now.Month, now.Day, 3, 0, 0, 0)

答案 1 :(得分:4)

有很多方法可以做到这一点 - 阅读the documentation可能会给你更多的想法

Dim someDate As DateTime = DateTime.Now()
Dim threeAmDate As DateTime = New DateTime(someDate.Year, _
                                           someDate.Month, _
                                           someDate.Day, _
                                           3, _  'hours 
                                           0, _  'minutes
                                           0, _  'seconds
                                           0)    'milliseconds
Console.WriteLine(threeAmDate)

答案 2 :(得分:0)

试试这个

Label1.Text = DateAndTime.Today & "    " & TimeOfDay

你可以将它放在标签或任何东西中,你可以将时间改为“3:00:00”

答案 3 :(得分:0)

这个很老......但我遇到了同样的问题。

Dim dt As New DateTime(_DateTo.Ticks + _TimeTo.Ticks)

- >两个' _DateTo'和/或' _TimeTo'可以是Timespan或Datetime对象。