谢 谢 收 藏 http://www.qqread.com/asp/2006/10/c239664.html
使用ASP编写农历算法
新年将近,呵呵,写了一个阴历和阳历的ASP程序,就当给大家的新年贺礼
(呵呵,这下蓝先生满意啦把,就当我送给你的圣诞礼物把。。。)
希望大家能够喜欢。。。大家可以很方便的将这个农历加入到自己的主页中
中国人使用中国人自己的日历,呵呵,希望大家以后能够支持ChinaASP的
共同进步。。。
一共两个文件cal.ASP和cal2.inc(主要是常量的定义)
cal.ASP代码如下
<!--#include virtual="cal2.inc"-->
<%
Function GongDataIsValid(m_date)
if Not IsDate(m_date) Then
GongDataIsValid = False
Exit Function
else
if Year(m_date) >1950 AND Year(m_date) < 2050 Then
GongDataIsValid = true
Exit Function
else
if Year(m_date)=1950 Then
if Month(m_date)>2 Then
GongDataIsValid = true
Exit Function
else
if Month(m_date)=2 Then
if Day(m_date) > 16 Then
GongDataIsValid = true
Exit Function
End If
End If
End If
End If
End If
End If
GongDataIsValid = FALSE
End Function
Function NongDataIsValid(m_date)
if Year(m_date) > 1949 AND Year(m_date) < 2049 Then
NongDataIsValid = true
Exit Function
else
if Year(m_date)=2049 Then
if Month(m_date.month) < 12 Then
NongDataIsValid = true
Exit Function
else
if Month(m_date)=12 Then
if Day(m_date) < 8 Then
NongDataIsValid = true
Exit Function
End If
End If
End If
End If
End If
NongDataIsValid = False
End Function
Function ConvertToGongLi(m_nongli)
Dim days
Dim years
Dim alldays
Dim result
days = DaysFromSpringDay(m_nongli)
days = days + GetDaysFromStart(Year(m_nongli))
years = Year(m_nongli)
alldays = GetGongYearDays(years)
if days > alldays Then
days = days - alldays
years = years + 1
end If
result = CalGongDate(years,days)
ConvertToGongLi = result
End Function
Function ConvertToNongLi(m_gongli)
Dim days
Dim years
Dim alldays
Dim result
days = DaysFromNewYear(m_gongli)
alldays = GetDaysFromStart(Year(m_gongli))
years = Year(m_gongli)
if days <= alldays Then
years = years - 1
days = days + GetGongYearDays(years)
end if
days = days - GetDaysFromStart(years)
result = CalNongDate(years,days)
ConvertToNongLi = result
end function
Function GetDateAfterDays(m_first,m_days)
Dim m_firstdays
m_firstdays = DaysFromNewYear(m_first) + m_days
GetDateAfterDays = CalGongDate(Year(m_first),m_firstdays)
End Function
Function CalGongDate(years,days)
Dim resultday,resultyear,进入讨论组讨论。
新年将近,呵呵,写了一个阴历和阳历的ASP程序,就当给大家的新年贺礼
(呵呵,这下蓝先生满意啦把,就当我送给你的圣诞礼物把。。。)
希望大家能够喜欢。。。大家可以很方便的将这个农历加入到自己的主页中
中国人使用中国人自己的日历,呵呵,希望大家以后能够支持ChinaASP的
共同进步。。。
一共两个文件cal.ASP和cal2.inc(主要是常量的定义)
cal.ASP代码如下
<!--#include virtual="cal2.inc"-->
<%
Function GongDataIsValid(m_date)
if Not IsDate(m_date) Then
GongDataIsValid = False
Exit Function
else
if Year(m_date) >1950 AND Year(m_date) < 2050 Then
GongDataIsValid = true
Exit Function
else
if Year(m_date)=1950 Then
if Month(m_date)>2 Then
GongDataIsValid = true
Exit Function
else
if Month(m_date)=2 Then
if Day(m_date) > 16 Then
GongDataIsValid = true
Exit Function
End If
End If
End If
End If
End If
End If
GongDataIsValid = FALSE
End Function
Function NongDataIsValid(m_date)
if Year(m_date) > 1949 AND Year(m_date) < 2049 Then
NongDataIsValid = true
Exit Function
else
if Year(m_date)=2049 Then
if Month(m_date.month) < 12 Then
NongDataIsValid = true
Exit Function
else
if Month(m_date)=12 Then
if Day(m_date) < 8 Then
NongDataIsValid = true
Exit Function
End If
End If
End If
End If
End If
NongDataIsValid = False
End Function
Function ConvertToGongLi(m_nongli)
Dim days
Dim years
Dim alldays
Dim result
days = DaysFromSpringDay(m_nongli)
days = days + GetDaysFromStart(Year(m_nongli))
years = Year(m_nongli)
alldays = GetGongYearDays(years)
if days > alldays Then
days = days - alldays
years = years + 1
end If
result = CalGongDate(years,days)
ConvertToGongLi = result
End Function
Function ConvertToNongLi(m_gongli)
Dim days
Dim years
Dim alldays
Dim result
days = DaysFromNewYear(m_gongli)
alldays = GetDaysFromStart(Year(m_gongli))
years = Year(m_gongli)
if days <= alldays Then
years = years - 1
days = days + GetGongYearDays(years)
end if
days = days - GetDaysFromStart(years)
result = CalNongDate(years,days)
ConvertToNongLi = result
end function
Function GetDateAfterDays(m_first,m_days)
Dim m_firstdays
m_firstdays = DaysFromNewYear(m_first) + m_days
GetDateAfterDays = CalGongDate(Year(m_first),m_firstdays)
End Function
Function CalGongDate(years,days)
Dim resultday,resultyear,进入讨论组讨论。
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
相关专题
- asp+ajax打造无刷新新闻评论系统 (846次浏览)
- 绝对免费顶级域名+免费500MB ASP?? (728次浏览)
- ASP后门之终极伪装 (601次浏览)
- FTP的安全问题 《转》 (589次浏览)
- 如何正确显示数据库中的图片 (503次浏览)
- 用户登录/注册程序——Flash+ASP (492次浏览)
- SQL注入漏洞全接触 (381次浏览)
- asp+sqlserver 分页方法(不用存储过程) (314次浏览)
- Windows操作系统出现死机故障的解决方法 (202次浏览)
- 对ASP 动态包含文件方法的改进 (152次浏览)



