以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  如何获取当月的最后一天的日期?  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=3276)

--  作者:baoxyang
--  发布时间:2009/6/25 9:11:00
--  如何获取当月的最后一天的日期?
用代码如何编写获取当月的最后一天的日期?有劳各位指点。先谢了!
--  作者:smileboy
--  发布时间:2009/6/25 9:15:00
--  

利用共享方法DaysInMonth可以获得指定月份的天数,例如:

Output.Show("2008年2月有" & Date.DaysInMonth(2008,2) & "天")

 

Dim Days As Integer
Days =
Date.DaysInMonth(2007,2
)
Output.Show(Days)

上述代码输出2007年2月份的天数。

[此贴子已经被作者于2009-6-25 9:16:23编辑过]

--  作者:lxl
--  发布时间:2009/6/25 9:18:00
--  

DaysInMonth

这是一个共享方法,用于返回指定月份的天数。

语法:

DaysInMonth(Year,Month)

Year:  年
Month: 月

例如:

Dim Days As Integer
Days =
Date.DaysInMonth(2007,2
)
Output.Show(Days)

上述代码输出2007年2月份的天数。

再例如我们要求得2008年2月份的第一天和最后一天:

Dim Days As Integer = Date.DaysInMonth(2008,2)
Dim
FirstDay As Date = New Date(2008,2,1)
Dim
LastDay As Date = New Date(2008,2,Days)
OutPut.Show(
"第一天:" & FirstDay)
OutPut.Show(
"最后一天:"
& LastDay)

上述代码执行后,会输出:

第一天:2008-2-1
最后一天:2008-2-29


--  作者:baoxyang
--  发布时间:2009/6/25 9:20:00
--  
谢了!
--  作者:lxl
--  发布时间:2009/6/25 9:23:00
--  
还有一个办法:
就是先得到本月第一天
然后AddMonths(1).AddDays(-1)
自己试试:)
--  作者:yangming
--  发布时间:2009/6/25 9:56:00
--  

如果用列来表示,可以看下面代码
Dim dr As DataRow = e.DataRow
Dim y As Integer = dr("日期").Year
Dim m As Integer = dr("日期").Month
Dim Days As Integer = Date.DaysInMonth(y,m)
Dim LastDay As Date = New Date(y,m,Days)
Select Case e.DataCol.Name
    Case "日期"
        dr("最后一天日期") =LastDay
      
End Select


--  作者:mr725
--  发布时间:2009/6/25 10:04:00
--  
下面是狐狸爸爸在2008-12-1 给我的:(作个参考或收藏吧)


呵呵,越是初学的人,越将自己的系统搞得复杂。
    \'本月第一天
    Dim StartDate AS date = New Date(Date.Today.Year,Date.Today.Month,1)
    \'本月最后一天
    Dim EndDate AS Date = New Date(Date.Today.Year,Date.Today.Month,Date.DaysInMonth(Date.Today.Year,Date.Today.Month))


--  作者:yangming
--  发布时间:2009/6/25 10:49:00
--  
以下是引用mr725在2009-6-25 10:04:00的发言:
下面是狐狸爸爸在2008-12-1 给我的:(作个参考或收藏吧)


呵呵,越是初学的人,越将自己的系统搞得复杂。
    \'本月第一天
    Dim StartDate AS date = New Date(Date.Today.Year,Date.Today.Month,1)
    \'本月最后一天
    Dim EndDate AS Date = New Date(Date.Today.Year,Date.Today.Month,Date.DaysInMonth(Date.Today.Year,Date.Today.Month))

学习,呵呵