有人可以帮助我确定给定日期是一个月中的最后一天还是最后一天?
例如我有两个日期,一个是 2013-01-27,另一个是 2013-02-28。我需要确定哪一天是最后一天。所以必须显示的是 2013-02-28,因为它是 2 月的最后一天,而 2013-01-27 不是 1 月的最后一天。
我可以使用的条件是什么?
提前致谢。
有人可以帮助我确定给定日期是一个月中的最后一天还是最后一天?
例如我有两个日期,一个是 2013-01-27,另一个是 2013-02-28。我需要确定哪一天是最后一天。所以必须显示的是 2013-02-28,因为它是 2 月的最后一天,而 2013-01-27 不是 1 月的最后一天。
我可以使用的条件是什么?
提前致谢。
Use this:
Function IsLastDay(ByVal myDate As Date) As Boolean
return myDate.Day = Date.DaysInMonth(myDate.Year, myDate.Month)
End Function
添加一天,如果得到的答案不是同一个月,则您的日期是该月的最后一天。
这对我有用:
Dim isLastDayOfMonth As Func(Of DateTime, Boolean) = _
Function (dt) dt.AddDays(1).Day = 1
希望这对您有所帮助,它是 Shawn de Wet 建议答案的代码。您可以将 Datetime.today.month 切换为具有特定日期的另一个变量,然后只需将 Today.Adddays(1) 切换为特定 date.AddDays(1)
Dim dateOfToday As DateTime = Today.AddDays(1)
Sub isTodayTheLastDay()
If DateTime.Today.Month = dateOfToday.Month Then
'yes its the same month, place code here
Else
'no its not the same month, place code here
End If
End Sub
--
Dim dateToCheck As New DateTime(2013, 4, 21) 'any date you want to check here
Dim Check As DateTime = dateToCheck.AddDays(1)
Sub isTodayTheLastDay()
If dateToCheck.Month = Check.Month Then
'yes its the same month, place code here
Else
'no its not the same month, place code here
End If
End Sub
或者您可以检查下一天是否是该月的第一天。
如果您使用的是 ruby,则可以使用以下条件:
(date + 1).day == 1
或者,如果您使用的是 python:
(date + datetime.timedelta(days=1)).day == 1
干杯!