VB.net Addmonths

时间:2013-02-04 07:07:13

标签: asp.net vb.net

我正在尝试移动日期,即一个月或一个月前进。如果我从本月(2月)到1月份退回一个月,那么如果我加上一个月的话,那么2月的最后一天(28日)也是如此。开始日期很好,因为整月都是从1月开始。

请有人建议。谢谢

Vb

            hStartDate.Value = "2013/2/01 12:00:00 AM"
            hEndDate.Value = "2013/2/28 11:59:59 PM"


            Dim StartDate As New Date
            StartDate = hStartDate.Value
            hStartDate.Value = StartDate.AddMonths(-1)


            Dim EndDate As New Date
            EndDate = hEndDate.Value
            hEndDate.Value = EndDate.AddMonths(-1)

输出

            hStartDate.Value = "2013/01/01"
            hEndDate.Value = "2013/01/28 11:59:59 PM"

2 个答案:

答案 0 :(得分:0)

这应该有所帮助:DevCurry它基本上是在当月的第一天,并且删除一天,从而导致上个月的最后一天。

    hStartDate.Value = "2013/2/01 12:00:00 AM"
    hEndDate.Value = "2013/2/28 11:59:59 PM"


    Dim StartDate As New Date
    StartDate = hStartDate.Value
    hStartDate.Value = StartDate.AddMonths(-1)


    Dim EndDate As New Date
    EndDate = hEndDate.Value
    hEndDate.Value = StartDate.AddDays(-1)

答案 1 :(得分:0)

尝试此设置结束日期(修改hStartDate后):

hEndDate.Value = New Date(hStartDate.Year, hStartDate.Month, Date.DaysInMonth(hStartDate.Year, hStartDate.Month))

函数Date.DaysInMOnth()返回给定年份中一个月的最后一天。如果您愿意,也可以像这样设置日期:

hEndDate.Value = EndDate.AddMonths(-1)
hEndDate.Value.Day = Date.DaysInMonth(hStartDate.Year, hStartDate.Month)