文章摘要
这篇文章介绍了一个自定义的VBScript函数ForMatDate,用于根据指定的参数 Para 格式化日期时间。函数接受两个参数:DateAndTime(日期时间)和 Para(格式参数)。它通过分解 DateAndTime 为年、月、日、小时、分钟和秒,并根据 Para 的值调整输出格式。
### 核心内容:
1. **函数功能**:根据 Para 的值,输出不同格式的日期时间,包括:
- 仅显示日期(Para="0")
- 显示日期和时间(Para="0")
- 显示日期、月、日(Para="2")
- 显示年、月、日(Para="3")
- 中文格式显示(如“2023年12月25日”)
2. **分解步骤**:将 DateAndTime 分解为年、月、日、小时、分钟、秒,并在长度不足时补零以确保格式一致性。
3. **参数控制**:通过 Case 语句根据 Para 的值调整输出格式,支持多种显示方式。
4. **示例使用**:文章最后提到调用函数为 Response.Write ForMatDate(Now,"2"),即返回当前日期(仅显示年、月、日)。
总结:该函数通过灵活的参数控制,实现了对日期时间的不同格式化需求。
Public Function ForMatDate(DateAndTime, Para) ‘格式化日期(日期时间,格式)
Dim Y, M, D, H, F, S
IF Not ISNumeric(Para) Or Not ISDate(DateAndTime) Then Exit Function
Y=CStr(Year(DateAndTime))
M=CStr(Month(DateAndTime)):IF Len(M)=1 Then M=”0″ & M
D=CStr(Day(DateAndTime)):IF Len(D)=1 Then D=”0″ & D
H=CStr(Hour(DateAndTime)):IF Len(H)=1 Then H=”0″ & H
F=CStr(Minute(DateAndTime)):IF Len(F)=1 Then F=”0″ & F
S=CStr(Second(DateAndTime)):IF Len(S)=1 Then S=”0″ & S
Select Case Para
Case “0”
ForMatDate=Y & “-” & M & “-” & D & ” ” & H & “:” & F & “:” & S
Case “1”
ForMatDate=Y & “-” & M & “-” & D & ” ” & H & “:” & F
Case “2”
ForMatDate=Y & “-” & M & “-” & D
Case “3”
ForMatDate=Y & “/” & M & “/” & D
Case “4”
ForMatDate=Y & “年” & M & “月” & D & “日”
Case “5”
ForMatDate=M & “-” & D & ” ” & H & “:” & F
Case “6”
ForMatDate=M & “/” & D
Case “7”
ForMatDate=M & “月” & D & “日”
Case “8”
ForMatDate=Y & “年” & M & “月”
Case “9”
ForMatDate=Y & “-” & M
Case “10”
ForMatDate=Y & “/” & M
Case “11”
ForMatDate=right(Y,2) & “-” &M & “-” & D & ” ” & H & “:” & F
Case “12”
ForMatDate=right(Y,2) & “-” &M & “-” & D
Case “13”
ForMatDate=M & “-” & D
Case Else
ForMatDate=DateAndTime
End Select
End Function
Response.Write ForMatDate(Now,”2″)
Public Function ForMatDate(DateAndTime, Para) ‘格式化日期(日期时间,格式)
Dim Y, M, D, H, F, S
IF Not ISNumeric(Para) Or Not ISDate(DateAndTime) Then Exit Function
Y=CStr(Year(DateAndTime))
M=CStr(Month(DateAndTime)):IF Len(M)=1 Then M=”0″ & M
D=CStr(Day(DateAndTime)):IF Len(D)=1 Then D=”0″ & D
H=CStr(Hour(DateAndTime)):IF Len(H)=1 Then H=”0″ & H
F=CStr(Minute(DateAndTime)):IF Len(F)=1 Then F=”0″ & F
S=CStr(Second(DateAndTime)):IF Len(S)=1 Then S=”0″ & S
Select Case Para
Case “0”
ForMatDate=Y & “-” & M & “-” & D & ” ” & H & “:” & F & “:” & S
Case “1”
ForMatDate=Y & “-” & M & “-” & D & ” ” & H & “:” & F
Case “2”
ForMatDate=Y & “-” & M & “-” & D
Case “3”
ForMatDate=Y & “/” & M & “/” & D
Case “4”
ForMatDate=Y & “年” & M & “月” & D & “日”
Case “5”
ForMatDate=M & “-” & D & ” ” & H & “:” & F
Case “6”
ForMatDate=M & “/” & D
Case “7”
ForMatDate=M & “月” & D & “日”
Case “8”
ForMatDate=Y & “年” & M & “月”
Case “9”
ForMatDate=Y & “-” & M
Case “10”
ForMatDate=Y & “/” & M
Case “11”
ForMatDate=right(Y,2) & “-” &M & “-” & D & ” ” & H & “:” & F
Case “12”
ForMatDate=right(Y,2) & “-” &M & “-” & D
Case “13”
ForMatDate=M & “-” & D
Case Else
ForMatDate=DateAndTime
End Select
End Function
Response.Write ForMatDate(Now,”2″)
© 版权声明
文章版权归作者所有,未经允许请勿转载。