新客网WWW.XKER.COM:致力做中国最专业的网络学院!
学院: 操作系统 - 网络应用 - 服务器 - 网络安全 - 工具软件 - 办公软件 - Web开发 - 数据库 - 网页设计 - 图形图像 - 媒体动画 - 硬件学堂 - 存储频道 - QQ专区
您的位置:首页 > 软件开发 > Web开发 > Asp教程 > 正文:关于日期计算的问题

关于日期计算的问题

新客网 XKER.COM 2003-07-04 来源: 收藏本文
碰到了关于日期计算的问题,解决了,发现好多朋友也有一样的问题
不知道大家解决了没有,我把我的方法贴出来,希望能给大家带来帮助
如果哪里写的不好,或者错误,不要笑话!!
我可是第一次发表自己的想法,,,心里斗争非常激烈。。。
===============================
为了大家好理解,用vbscript编写=
理解了,用什么都好写 :)_______=
===============================

<script language=vbscript>
function CountDate(That,NowDate)

''采用掐头去尾的方法计算两个日期的时间间隔
''日期计算 日期差 时间差 日期间隔 计算日期
''nowdate是目前的日期,that是某特定的日期
''nowdate月的总天数减去that月的总天数(有可能是负数)
''再加上中间每年的总天数,就是日期的间隔了
''通过对润年润月的计算,就更加精确了。
'=========================
'=小乖的想法iamws@371.net=
'=========================

days=0'初始化天数

for i=1 to month(nowdate)-1'随月份增加天数
select case i
case 1,3,5,7,8,10,12'还记得小学一年级的数学吗?我就是背着写出来的,哈哈~~
days=days+31'1,2,5,7,8,10,腊,有31天
case 4,6,9,11
days=days+30
case 2
if year(that)/4=int(year(that)/4) then days = days+29 else days=days+28
end select
next


for i=year(that) to year(nowdate)-1'随年份增加天数
if year(that)/4=int(year(that)/4) then
days = days + 366
else
days = days + 365
end if
next


for i=1 to month(that)-1'减去原来的
select case i
case 1,3,5,7,8,10,12
days=days-31
case 4,6,9,11
days=days-30
case 2'润月处理
if year(that)/4=int(year(that)/4) then days = days-29 else days=days-28
end select
next


days=days+day(nowdate)-day(that)'该加的加,该减的减!


CountDate = days

end function
msgbox countdate("10/2/00 11:33:25 PM",now)
</script>


======================================
如果对你有帮助,请给我加加分,谢谢谢谢!=
======================================
收藏】 【评论】 【推荐】 【投稿】 【打印】 【关闭
发表评论
要记得去论坛讨论,点击注册新会员匿名评论
评论内容:不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
阅读排行
随机推荐
实用信息推荐