asp中的一些日期时间函数

asp中的一些日期时间函数,第1张

本文提供vbscript时间函数的概要介绍,可应对一般应用,具体特殊需求可进一步搜索。

date()

获取日期,格式:2004-2-28

time()

获取时间,格式:22:24:59

now()

获取日期和时间

格式:

2005-5-2

22:37:30

d=date()

获取年份:year(d)

获取月份:month(d)

获取日子:day(d)

获取星期几:weekday(d)

t=time()

获取小时:hour(t)

获取分钟:minute(t)

获取秒数:second(t)

日期相加函数:DateAdd(interval,

number,

date)

可用该函数从日期中添加或减去指定时间间隔。

参数说明:

interval-运算的基准间隔

number-加上多少,可为负数

date-基准日期

下面是interval的可选值,注意加上引号:

设置

描述

yyyy

q

季度

m

y

一年的日数

d

w

一周的日数

ww

h

小时

n

分钟

s

举例:

1、计算明天:

tomorrow=DateAdd("d",1,date())

2、2012年12月1日的前一天:

preday=DateAdd("d",-1,"2012-12-1")

更详细用法请搜索。

日期间隔函数-DateDiff(interval,

date1,

date2[,

firstdayofweek][,

firstweekofyear]])

计算两个日期之间相差的间隔。

例如,可以使用

DateDiff

来计算两个日期之间相隔几日,或计算从今天起到年底还有多少个星期。如果date1比date2

晚,则返回负数。

参数说明:

interval-同DateAdd()函数

Date1,date2

-进行运算的两个日期

可选参数:

firstdayofweek-

指定一个星期的第一天的常数。如果未予指定,则以星期日为第一天。

当计算两个日期相差几周时(时间间隔符号

“w”

“ww”),该参数会影响结果。具体请搜索。

firstweekofyear-指定一年的第一周怎么确定,如果未予指定,则以包含

1

1

日的星期为第一周。具体请搜索。

其他函数:

DateSerial(year,

month,

day)

-将数值换算为日期变量,返回值类型同date()函数。例如,如果day=35,则自动计算到下个月。再例如,DateSerial(1990

-

10,

8

-

2,

1

-

1)

则计算1990

年8月1日的十年零两个月又一天

之前的日期,也就是1980年5月31日。

DatePart(interval,

date[,firstdayofweek[,

firstweekofyear]])

-返回指定时间部分的数值。例如,可以使用DatePart

计算某个日期是星期几或目前为几点钟。参数同上面。

DateValue(date)-将各种日期格式串转化为日期变量,返回值类型同date()函数。例如,除了

12/30/1991

12/30/91

之外,DateValue

也识别

December

30,

1991

Dec

30,

1991。

TimeValue(time)-将各种时间格式串转化为时间变量。原理同DateValue。

TimeSerial(hour,

minute,

second)

-将数值转化为时间变量,返回值类型和time()函数相同。原理同DateSerial。

Timer()-午夜开始到现在经过的秒数。

Now

Now()

取得系统当前的日期和时间

Dim

MyVar

MyVar

=

Now

MyVar

包含当前的日期和时间。

Date

Date()

取得系统当前的日期

Dim

MyDate

MyDate

=

Date

MyDate

包含当前系统日期。

Time

Time()

取得系统当前的时间

Dim

MyTime

MyTime

=

Time

返回当前系统时间。

Year

Year(Date)

取得给定日期的年份

Dim

MyDate,

MyYear

MyDate

=

#October

19,

1962#

函数

语法

说明

示例

Now

Now()

取得系统当前的日期和时间

Dim

MyVar

MyVar

=

Now

MyVar

包含当前的日期和时间。

Date

Date()

取得系统当前的日期

Dim

MyDate

MyDate

=

Date

MyDate

包含当前系统日期。

Time

Time()

取得系统当前的时间

Dim

MyTime

MyTime

=

Time

返回当前系统时间。

Year

Year(Date)

取得给定日期的年份

Dim

MyDate,

MyYear

MyDate

=

#October

19,

1962#

分派一日期。

MyYear

=

Year(MyDate)

MyYear

包含

1962。

Month

Month(Date)

取得给定日期的月份

Dim

MyVar

MyVar

=

Month(Now)

MyVar包含当前月对应的数字。

Day

Day(Date)

取得给定日期是几号

Dim

MyDay

MyDay

=

Day("October

19,

1962")

MyDay包含

19。

Hour

Hour(time)

取得给定时间是第几小时

Dim

MyTime,

MyHour

MyTime

=

Now

MyHour

=

Hour(MyTime)

MyHour

包含代表当前时间的数值。

Minute

Minute(time)

取得给定时间是第几分钟

Dim

MyVar

MyVar

=

Minute(Now)

Second

Second(time)

取得给守时间是第几秒

Dim

MySec

MySec

=

Second(Now)

MySec

包含代表当前秒的数字。

WeekDay

WeekDay(Date)

取得给定日期是星期几的整数,1表示星期日,2表示星期一,依此类推

Dim

MyDate,

MyWeekDay

MyDate

=

#October

19,

1962#

分派日期

MyWeekDay

=

Weekday(MyDate)

MyWeekDay

包含

6,MyDate

代表星期五

DateDiff

DateDiff("Var",Var1,Var2)

Var:日期或时间间隔因子,有如下参数:

yyyy

m月

d

ww星期

h小时

s秒

Var1:第一个日期或时间

Var2:第二个日期或时间,比Var1晚

计算两个日期或时间的间隔

DateDiff("d",Date(),#1/1/2005#)

返回离2005元旦还有多少

DateDiff("h",Date(),#1/1/2005#)

返回离2005元旦还有多少小时

DateDiff("d",#1/1/2003#,#1/1/2005#)

返回两个日期之间的天数

DateAdd

DateDiff("Var",Var1,Var2)

Var:日期或时间间隔因子:

Var1:日期或时间间隔倍数

Var2:日期或时间的基准

对两个日期或时间作加法

如下示例将

95

1

31

日加上一个月:

NewDate

=

DateAdd("m",

1,

"31-Jan-95")

在这个示例中,DateAdd

返回

95

2

28

日,而不是

95

2

31

日。如果

date

96

1

31

日,则返回

96

2

29

日,这是因为

1996

是闰年。

如果计算的日期是在公元

100

年之前,则会产生错误。

FormatDateTime

FormatDateTime(Date,vbShortDate)

转化为短日期格式

FromatDateTime(Date(),vbLongDate)

"以长日期格式显示

FormatDateTime(Date,vbLongDate)

转化为长日期格式

FormatDateTime(Date,vbShortTime)

转化为短时间格式

FormatDateTime(Date,vbLongTime)

转化为长时间格

分几种情况:

如果当天是周日,五个工作日后就是下周一,共8天后日期

如果当天在周一至周五,五个工作日后刚好对应下周周N,共7天后日期

如果当天是周六,五个工作日后就是下下周一,共9天后日期

<%

Dim ymd,i_d,week

ymd=Date '当前日期

week=Weekday(ymd) '当前日期是周几

If week=1 Then

i_d=8

ElseIf week=6 Then

i_d=9

Else

i_d=7

End If

Responsewrite i_d&" "&DateAdd("d",i_d,date) '得到五个工作日后的日期

%>

asp取得完整时间的年月日 可以使用FormatDateTime

具体示例

比如现在有一个时间为 now()

可以写成

<%=FormatDateTime(now(),1)%>

这样就是当前的年月日了。

如果是数据库里的时间 比如数据库时间字段为date 可以写成

<%=FormatDateTime(rs("date"),1)%>

这里延伸一下:

0 根据系统设置显示日期或时间

1 以长日期格式显示日期

2 以短日期格式显示日期

3 以长时间格式显示时间

4 以短时间格式显示时间

最简单的方式: <%=hour(now())%>:<%=minute(now())%>:<%=second(now())%>

再看一下有关时间的函数,相信能用上

Date()函数获取日期, Time()函数获取时间。 Now()函数可以获取当前的日期加时间。now() 获取当前系统日期和时间,

ASP输出:<%=now()%> Year(now()) 获取年份

ASP输出:<%=Year(now())%> Month(now()) 获取当前月份,

ASP输出:<%=Month(now())%> day(now()) 获取当天数,

ASP输出:<%=day(now())%> Minute(now()) 获取分钟数,

ASP输出:<%=Minute(now())%> Second(now()) 获取秒钟数,

ASP输出:<%=Second(now())%> date() 获取当前系统日期,

格式为:2004-2-28 time() 获取当前系统时间,格式为:22:24:59

这样显示出来的时间不是即时刷新的,如果要自动刷新还需js代码配合。可用JS代码如下:

<span id="span_dt_dt" style='border:1px solid black;background-color:#FFFFFF' ></span>

<SCRIPT language=javascript>

<!--

//documentwrite("");

function show_date_time(){

windowsetTimeout("show_date_time()", 1000);

var now = new Date(); //获取系统日期

//获取时间 

var hh = nowgetHours(); //获取小时

var mm = nowgetMinutes(); //获取分钟

var ss = nowgetTime() % 60000; //获取时间,因为系统中时间是以毫秒计算的, 

//所以秒要通过余60000得到。 

ss = (ss - (ss % 1000)) / 1000; //然后,将得到的毫秒数再处理成秒 

span_dt_dtinnerHTML=hh+"时"+mm+"分"+ss+"秒"+now; 

}

show_date_time();

//-->

</SCRIPT>

不明白楼主的意思,能不能说明白点

上面的代码只是生成三个下拉菜单,并初始化赋值为2000,1,1

--------

第二个页面获取

你可以通过include把它放到同另一个页面适当的位置:

<!--#include file="这个ASP文件地址"-->

然后通过JavaScript或VBScript获取它们的值:

<script language=javascript>

//通过下面代码,获取下拉选项年、月、日的值,并分别保存到getY、getM、getD变量中,再合并为getYMD。

var getY=documentall["selYear"]value;

var getM=documentall["selMonth"]value;

var getD=documentall["selDay"]value;

var getYMD=new Date(getY,getM,getD)toLocaleString();

alert(getYMD);//显示为2000年1月1日

</script>

++++++++++++++++++++++

da6wei6、江南财子 的方法已可以实现由A页将数据传达到B页了。

他们用的method=get,如果所传的数据量大,不止日期,则应该用method=post来传递。下面我列出A页与B页的代码:

(A页)ahtm

<form action="basp" name="myForm" method="post">

<input type=hidden name="myDate" id="myDate" value="">//这个作为隐藏的数据,提交时用它保存日期

///////////////

你的代码放这里

///////////////

……

<input type=submit onclick="setData()">

<script language=javascript>

function setData(){

var getY=documentall["selYear"]value;

var getM=documentall["selMonth"]value;

var getD=documentall["selDay"]value;

var getYMD=new Date(getY,getM,getD)toLocaleString();

windowdocumentgetElementById("myDate")value=getYMD;

return true;

}

</script>

basp代码:

具体导入数据库过程就不用说了吧,

获取日期的原理一样,用request("myDate")就可以了。

可以使用函数格式化时间格式

'转换时间格式

Function DateToStr(DateTime,ShowType)

Dim DateMonth,DateDay,DateHour,DateMinute,DateWeek,DateSecond

Dim FullWeekday,shortWeekday,Fullmonth,Shortmonth,TimeZone1,TimeZone2

TimeZone1="+0800"

TimeZone2="+08:00"

FullWeekday=Array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday")

shortWeekday=Array("Sun","Mon","Tue","Wed","Thu","Fri","Sat")

Fullmonth=Array("January","February","March","April","May","June","July","August","September","October","November","December")

Shortmonth=Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec")

DateMonth=Month(DateTime)

DateDay=Day(DateTime)

DateHour=Hour(DateTime)

DateMinute=Minute(DateTime)

DateWeek=weekday(DateTime)

DateSecond=Second(DateTime)

If Len(DateMonth)<2 Then DateMonth="0"&DateMonth

If Len(DateDay)<2 Then DateDay="0"&DateDay

If Len(DateMinute)<2 Then DateMinute="0"&DateMinute

Select Case ShowType

Case "Y-m-d"

DateToStr=Year(DateTime)&"-"&DateMonth&"-"&DateDay

Case "Y-m-d H:I A"

Dim DateAMPM

If DateHour>12 Then

DateHour=DateHour-12

DateAMPM="PM"

Else

DateHour=DateHour

DateAMPM="AM"

End If

If Len(DateHour)<2 Then DateHour="0"&DateHour

DateToStr=Year(DateTime)&"-"&DateMonth&"-"&DateDay&" "&DateHour&":"&DateMinute&" "&DateAMPM

Case "Y-m-d H:I:S"

If Len(DateHour)<2 Then DateHour="0"&DateHour

If Len(DateSecond)<2 Then DateSecond="0"&DateSecond

DateToStr=Year(DateTime)&"-"&DateMonth&"-"&DateDay&" "&DateHour&":"&DateMinute&":"&DateSecond

Case "YmdHIS"

DateSecond=Second(DateTime)

If Len(DateHour)<2 Then DateHour="0"&DateHour

If Len(DateSecond)<2 Then DateSecond="0"&DateSecond

DateToStr=Year(DateTime)&DateMonth&DateDay&DateHour&DateMinute&DateSecond

Case "ym"

DateToStr=Right(Year(DateTime),2)&DateMonth

Case "d"

DateToStr=DateDay

Case "ymd"

DateToStr=Right(Year(DateTime),4)&DateMonth&DateDay

Case "mdy"

Dim DayEnd

select Case DateDay

Case 1

DayEnd="st"

Case 2

DayEnd="nd"

Case 3

DayEnd="rd"

Case Else

DayEnd="th"

End Select

DateToStr=Fullmonth(DateMonth-1)&" "&DateDay&DayEnd&" "&Right(Year(DateTime),4)

Case "w,d m y H:I:S"

DateSecond=Second(DateTime)

If Len(DateHour)<2 Then DateHour="0"&DateHour

If Len(DateSecond)<2 Then DateSecond="0"&DateSecond

DateToStr=shortWeekday(DateWeek-1)&","&DateDay&" "& Left(Fullmonth(DateMonth-1),3) &" "&Right(Year(DateTime),4)&" "&DateHour&":"&DateMinute&":"&DateSecond&" "&TimeZone1

Case "y-m-dTH:I:S"

If Len(DateHour)<2 Then DateHour="0"&DateHour

If Len(DateSecond)<2 Then DateSecond="0"&DateSecond

DateToStr=Year(DateTime)&"-"&DateMonth&"-"&DateDay&"T"&DateHour&":"&DateMinute&":"&DateSecond&TimeZone2

Case Else

If Len(DateHour)<2 Then DateHour="0"&DateHour

DateToStr=Year(DateTime)&"-"&DateMonth&"-"&DateDay&" "&DateHour&":"&DateMinute

End Select

End Function

调用方式: DateToStr(日期,格式)

例:DateToStr(now(),"Y-m-d H:I:S")

以上就是关于asp中的一些日期时间函数全部的内容,包括:asp中的一些日期时间函数、asp access 根据当前日期 计算5个工作日(不含周六、日)后的日期、ASP中,如何在完整日期时间中取得年月日等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9741959.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存