|
复制代码 代码如下: <% '转发时请保留此声明信息,这段声明不并会影响你的速度! '************************** 【日期扩展类】Ver 0.1.1******************************** '开发人: Sman、Net Fetch '开发日期: 2005-11-11 '版本号: Ver 0.1.1
'官方网站:http://www.sman.cn http://www.ad0.cn '电子邮件:huihui3030@126.com NetFetchStudio@163.com '每日在线QQ:19341293 32050450 '版权声明:版权没有,盗版不究,源码公开,欢迎盗版,欢迎你到官方网站来寻求支持。 '如有任何改进之处,麻烦转发或者反馈一份到 huihui3030@126.com、NetFetchStudio@163.com,Thanks! '详细使用说明或范例请见下载附件或到官方站点或Email联系下载! '************************************************************************************
Class DateFunEx
Private d_ Private firstweekofyear_ Private firstdayofweek_
Private Sub class_initialize() d_ = date() '默认当前日期 firstdayofweek_ = 2 'vbMonday firstweekofyear_ = 1 '由 1 月 1 日所在的星期开始。 End Sub
'属性 setDate 日期 Public Property Let setDate(value) On Error Resume Next If IsNumeric(value) Then value = Cint(value) If len(value)< 3 Then value = "20" & right("0"&value,2) value = value & "-1" End If d_ = cDate(value) End Property
'属性 firstweekofyear 每年的第一周(详细设置请参照VBS手册) Public Property Let firstweekofyear(value) firstweekofyear_ = cInt(value) End Property
'属性 FirstDayofWeek 每周的第一天(详细设置请参照VBS手册) Public Property Let firstdayofweek(value) firstdayofweek_ = cInt(value) End Property
'------------------------------ ' 功能说明:算第几周的星期几是几号 ' 参数说明:y 年,w周,week 星期 (星期一1 星期天7) '------------------------------ Public Function GetWeekDate(y, w, DayofWeek) Dim NewYearDay NewYearDay = CDate(y & "-1-1") '元旦 GetWeekDate = ((NewYearDay - Weekday(NewYearDay, firstdayofweek_)) + (w - 1) * 7 + DayofWeek) End Function
'------------------------------ ' 功能说明:获得某年某月的天数 '------------------------------ Public Function GetMonthDayCount() GetMonthDayCount = DateDiff("d", d_, DateAdd("m", 1, d_)) End Function
'------------------------------ ' 功能说明:得到某年某月的第一天 '------------------------------ Public Function GetMonthFirstDay() GetMonthFirstDay = CDate( Year(d_) & "-" & Month(d_) & "-1") End Function
'------------------------------ ' 功能说明:得到某年的某月的最后一天 '------------------------------ Public Function GetMonthLastDay() GetMonthLastDay = CDate( Year(d_) & "-"&Month(d_) & "-" & DateDiff("d", d_, DateAdd("m", 1, d_))) End Function
'------------------------------ ' 功能说明:某日所在的周的第一天的日期 '------------------------------ Public Function WeekFirstDay() WeekFirstDay = GetWeekDate(Year(d_), DatePart("ww", d_,firstdayofweek_,firstweekofyear_), 1) End Function
'------------------------------ ' 功能说明:某日所在的周的第最后一天的日期 '------------------------------ Public Function WeekLastDay() WeekLastDay = GetWeekDate(Year(d_), DatePart("ww", d_,firstdayofweek_,firstweekofyear_), 7) End Function
End Class %>
测试页面: 复制代码 代码如下: <%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%> <% Option Explicit %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>Test_clsDateFunEx</title> </head>
<body> <!--#include file="clsDateFunEx.asp" --> <% Dim myDateFun,strDate strDate = "2005-4-1" Set myDateFun = new DateFunEx myDateFun.setDate = strDate Response.write "2006年第2周的星期一是几号:" & _ myDateFun.GetWeekDate(2006,2,1) &"<br>" Response.Write "2005年4月的天数:"&_ myDateFun.GetMonthDayCount & "<br>" Response.Write "2005年4月的第一天:"&_ myDateFun.GetMonthFirstDay & "<br>" Response.Write "2005年4月的最后一天:"&_ myDateFun.GetMonthLastDay & "<br>" Response.Write "2005年4月1日所在的周的第一天的日期:"&_ myDateFun.WeekFirstDay & "<br>" Response.Write "2005年4月1日所在的周的第最后一天的日期:" & _ myDateFun.WeekLastDay & "<br>" Set myDateFun = Nothing %> <br><br><br> </body> </html>
下载此文件 |
|