asp 时间格式转换...急...在线等
获取数据库日期格式是固定的如:2012-1-1 我想把月、日时间前面补0 如:2012-01-01 这样的效果,该如何实现...请大侠帮帮忙!
------解决方案--------------------自己写个函数吧,判断下月份,当小于10前面加个0,日期也一样。
------解决方案--------------------给你一个格式化时间的参数,存起来,以后用起来也方面,你也可以根据自己的需要部分修改
<%
' ============================================
' 格式化时间(显示)
' 参数:n_Flag
' 1:"yyyy年mm月dd日 hh:mm:ss"
' 2:"yyyy-mm-dd"
' 3:"hh:mm:ss"
' 4:"yyyy年mm月dd日"
' 5:"yyyymmdd"
' ============================================
Function Format_Time(s_Time, n_Flag)
Dim y, m, d, h, mi, s
Format_Time = ""
If IsDate(s_Time) = False Then Exit Function
y = cstr(year(s_Time))
m = cstr(month(s_Time))
If len(m) = 1 Then m = "0" & m
d = cstr(day(s_Time))
If len(d) = 1 Then d = "0" & d
h = cstr(hour(s_Time))
If len(h) = 1 Then h = "0" & h
mi = cstr(minute(s_Time))
If len(mi) = 1 Then mi = "0" & mi
s = cstr(second(s_Time))
If len(s) = 1 Then s = "0" & s
Select Case n_Flag
Case 1
Format_Time = y & "年" & m & "月" & d & "日" & h & ":" & mi & ":" & s
Case 2
Format_Time = y & "-" & m & "-" & d
Case 3
Format_Time = h & ":" & mi & ":" & s
Case 4
Format_Time = y & "年" & m & "月" & d & "日"
Case 5
Format_Time = y & m & d
End Select
End Function
%>
你可以将以上代码复制到需要的网页中,也可以单独建立一个页面,然后include,都可以,
如果用在多个页面,include 比较方便一些。
下面告诉你如何调用。
' 格式化时间(显示)
' 参数:n_Flag
' 1:"yyyy年mm月dd日 hh:mm:ss"
' 2:"yyyy-mm-dd"
' 3:"hh:mm:ss"
' 4:"yyyy年mm月dd日"
' 5:"yyyymmdd"
上面这些是参数
你需要的要求是第二个,只显示年月日,并且当月或者日 小月10的时候,有前导0补位。
那么
<%=Format_Time(now(),2)%>
你需要什么样的格式,把后面的数字,对应的修改就可以了。
如果要格式化数据库调用的时间格式,只要把now()替换为rs('时间字段')就OK了。。希望对你有帮助!!
------解决方案--------------------VBScript code
<%
Response.Write fmtDate("2012-1-1")
Function fmtDate(sDate)
Dim dt
If IsDate(sDate) Then
dt = CDate(sDate)
fmtDate = Year(dt) & "-" & Right("0" & Month(dt), 2) & "-" & Right("0" & Day(dt), 2)
Else
fmtDate = ""
End If
End Function
%>