对于access数据库的日期时间类型字段存储的日期,直接从数据库中读出显示的效果是带时间的如,2009-06-13 18:00 ,如果只是希望显示日期应该怎么办呢?
Vbscrip有一个函数FormatDateTime()。其说明如下:
返回表达式,此表达式已被格式化为日期或时间。
FormatDateTime(Date[, NamedFormat])
参数
Date
必选项。要被格式化的日期表达式。
NamedFormat
可选项。指示所使用的日期/时间格式的数值,如果省略,则使用 vbGeneralDate。
设置
NamedFormat 参数可以有以下值:
|
常数
|
值
|
描述
|
|
vbGeneralDate
|
0
|
显示日期和/或时间。如果有日期部分,则将该部分显示为短日期格式。如果有时间部分,则将该部分显示为长时间格式。如果都存在,则显示所有部分。
|
|
vbLongDate
|
1
|
使用计算机区域设置中指定的长日期格式显示日期。
|
|
vbShortDate
|
2
|
使用计算机区域设置中指定的短日期格式显示日期。
|
|
vbLongTime
|
3
|
使用计算机区域设置中指定的时间格式显示时间。
|
|
vbShortTime
|
4
|
使用 24 小时格式 (hh:mm) 显示时间。
|
仅希望显示日期时可用如下代码:
Strdate=formatdatetime(rs(“date”),2)。
因为在vbscript只有一种计算机区域那就是美国,所以只有一种短格式
“yyyy-mm-dd”.
asp时间日期格式化输出
1,2010-10-10 00:00:00
2,2010-10-10
3,2010/10/10
4,2010年10月10 00小时00分钟00秒
5,10-10 00:00:00
6,10/10
7,10月10日
其他变换根据程序要自行添加即可
- '转换时间 时间格式化
- Function formatDate(Byval t,Byval ftype)
- dim y, m, d, h, mi, s
- formatDate=""
- If IsDate(t)=False Then Exit Function
- y=cstr(year(t))
- m=cstr(month(t))
- If len(m)=1 Then m="0" & m
- d=cstr(day(t))
- If len(d)=1 Then d="0" & d
- h = cstr(hour(t))
- If len(h)=1 Then h="0" & h
- mi = cstr(minute(t))
- If len(mi)=1 Then mi="0" & mi
- s = cstr(second(t))
- If len(s)=1 Then s="0" & s
- select case cint(ftype)
- case 1
- ' yyyy-mm-dd
- formatDate=y & "-" & m & "-" & d
- case 2
- ' yy-mm-dd
- formatDate=right(y,2) & "-" & m & "-" & d
- case 3
- ' mm-dd
- formatDate=m & "-" & d
- case 4
- ' yyyy-mm-dd hh:mm:ss
- formatDate=y & "-" & m & "-" & d & " " & h & ":" & mi & ":" & s
- case 5
- ' hh:mm:ss
- formatDate=h & ":" & mi & ":" & s
- case 6
- ' yyyy年mm月dd日
- formatDate=y & "年" & m & "月" & d & "日"
- case 7
- ' yyyymmdd
- formatDate=y & m & d
- case 8
- 'yyyymmddhhmmss
- formatDate=y & m & d & h & mi & s
- end select
- End Function
复制代码
使用方法:
Strdate=formatdatetime(rs(“date”),1) 免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |