對於access數據庫的日期時間類型字段存儲的日期,直接從數據庫中讀出顯示的效果是帶時間的如,2009-06-13 18:00 ,若是隻是但願顯示日期應該怎麼辦呢?
Vbscrip有一個函數FormatDateTime()。其說明以下:
返回表達式,此表達式已被格式化爲日期或時間。
FormatDateTime(Date[, NamedFormat])
參數
Date
必選項。要被格式化的日期表達式。
NamedFormat
可選項。指示所使用的日期/時間格式的數值,若是省略,則使用 vbGeneralDate。
設置
NamedFormat 參數能夠有如下值: 函數
常數字體 |
值網站 |
描述spa |
vbGeneralDate.net |
0code |
顯示日期和/或時間。若是有日期部分,則將該部分顯示爲短日期格式。若是有時間部分,則將該部分顯示爲長時間格式。若是都存在,則顯示全部部分。orm |
vbLongDatehtm |
1ip |
使用計算機區域設置中指定的長日期格式顯示日期。 |
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) 沙比做者這是否是formatdatetime(rs(「date」),1) 而是 formatdate(rs(「date」),1)
沙比糊弄人。。。。。。。。。。。。。。