首页 /编程语言和算法/VB6/ASP
 VB6 代码管家-时间戳
2024年12月8日 21:58
'代码出处:http://www.360doc.com/content/14/0207/22/15605563_350578893.shtml

Public Function 时间戳(ByVal 默认长度 As Boolean) As String
    Dim ShiJianChuocode As String
    Dim obj As Object
    Set obj = CreateObject("MSScriptControl.ScriptControl")
    obj.AllowUI = True
    obj.Language = "JavaScript"
    ShiJianChuocode = ShiJianChuocode & "function abc()" & vbCrLf
    ShiJianChuocode = ShiJianChuocode & "{" & vbCrLf
    ShiJianChuocode = ShiJianChuocode & "var timestamp = new Date().getTime();" & vbCrLf
    ShiJianChuocode = ShiJianChuocode & "return timestamp;" & vbCrLf
    ShiJianChuocode = ShiJianChuocode & "}" & vbCrLf
    ShiJianChuocode = ShiJianChuocode & "abc()" & vbCrLf
    时间戳 = obj.Eval(ShiJianChuocode)
    If 默认长度 = True Then
        时间戳 = Left(时间戳, Len(时间戳) - 3)
    End If
End Function

'Private Sub Command1_Click() '调用方法
'Me.Cls
'Print 时间戳(True) '输出长度为10位
'Print 时间戳(False) '输出长度为13位
'End Sub

'********************************   生成时间戳   ********************************

'代码出处:http://blog.sina.com.cn/s/blog_537c6c8d01015hk3.html

'把UNIX时间戳转换为标准时间
'参数:intTime:要转换的UNIX时间戳;intTimeZone:该时间戳对应的时区
'返回值:intTime所代表的标准时间
'示例:FromUnixTime("1211511060", +8),返回值2008-5-23 10:51:0
Function FromUnixTime(intTime, intTimeZone) '转为标准时间
    If IsEmpty(intTime) Or Not IsNumeric(intTime) Then
        FromUnixTime = Now()
        Exit Function
    End If
    If IsEmpty(intTime) Or Not IsNumeric(intTimeZone) Then intTimeZone = 0
    FromUnixTime = DateAdd("s", intTime, "1970-1-1 0:0:0")
    FromUnixTime = DateAdd("h", intTimeZone, FromUnixTime)
End Function

'Private Sub Command1_Click() '调用方法
'Me.Cls
'Print FromUnixTime(时间戳(True), 8)
'End Sub

'********************************时间戳转标准时间********************************

'代码出处:http://blog.sina.com.cn/s/blog_537c6c8d01015hk3.html

'把标准时间转换为UNIX时间戳
'参数:strTime:要转换的时间;intTimeZone:该时间对应的时区
'返回值:strTime相对于1970年1月1日午夜0点经过的秒数
'示例:ToUnixTime("2008-5-23 10:51:0", +8),返回值为1211511060
Function ToUnixTime(strTime, intTimeZone) '转为UNIX时间戳
    If IsEmpty(strTime) Or Not IsDate(strTime) Then strTime = Now
    If IsEmpty(intTimeZone) Or Not IsNumeric(intTimeZone) Then intTimeZone = 0
    ToUnixTime = DateAdd("h", -intTimeZone, strTime)
    ToUnixTime = DateDiff("s", "1970-1-1 0:0:0", ToUnixTime)
End Function

'Private Sub Command1_Click() '调用方法
'Me.Cls
'Print Trim(ToUnixTime(FromUnixTime(时间戳(True), 8), 8))
'End Sub
'********************************标准时间转时间戳********************************


 
全部回复(0)
首页 | 电脑版 |