C'è qualche funzione in VB dot net per convertire datetime a Unix timestamp Se I google ottengo solo il viceversa, ma non VB.NET per unix timestampDateTime unixtime Stamp in .net
Qualsiasi aiuto è apprezzato
C'è qualche funzione in VB dot net per convertire datetime a Unix timestamp Se I google ottengo solo il viceversa, ma non VB.NET per unix timestampDateTime unixtime Stamp in .net
Qualsiasi aiuto è apprezzato
{Modifica} rimosso vecchio link di riferimento
secondi dal 1 gennaio 1970 il tempo = unix
Per ottenere questo in VB.NET vedi sotto esempio (nell'esempio utilizzando DateTime.UtcNow, ma si può inserire qualsiasi DateTime che desideri ri)
Dim uTime As Integer
uTime = (DateTime.UtcNow - New DateTime(1970, 1, 1, 0, 0, 0)).TotalSeconds
Guardando http://www.codeproject.com/KB/cs/timestamp.aspx mostra unix -> rete in modo da poter tornare indietro più probabile:.
DateTime dt = "the date";
DateTime start= new System.DateTime(1970, 1, 1, 0, 0, 0, 0);
TimeSpan ts = (dt - start);
ts.TotalSeconds //unix timestamp
o qualcosa di simile lo farà.
nota, questo non è stato testato da me il lavoro in modo che probabilmente non :)
Ho scritto questi ad un certo punto - tutto simile al precedente solo con un po 'più in dettaglio sulla cosa regolazione dell'ora vecchio estivo per io qui nel Regno Unito.
Public Function UnixToTime(ByVal strUnixTime As String) As Date
UnixToTime = DateAdd(DateInterval.Second, Val(strUnixTime), #1/1/1970#)
If UnixToTime.IsDaylightSavingTime = True Then
UnixToTime = DateAdd(DateInterval.Hour, 1, UnixToTime)
End If
End Function
Public Function TimeToUnix(ByVal dteDate As Date) As String
If dteDate.IsDaylightSavingTime = True Then
dteDate = DateAdd(DateInterval.Hour, -1, dteDate)
End If
TimeToUnix = DateDiff(DateInterval.Second, #1/1/1970#, dteDate)
End Function
In JavaScript, almeno, timestamp Unix sono millisecondi, e ho trovato un caso in cui ne avevo bisogno. Questo codice fa uso di .Net usando 10.000 tick/millisecondi. Ecco il codice che ho usato:
Public Module UnixTime
Const UnixEraStartTicks As Long = 621355968000000000
<Extension> Public Function UnixTimestamp(value As Date) As Long
Dim UnixEraTicks = value.Ticks - UnixEraStartTicks
Return UnixEraTicks \ 10000
End Function
Public Function DateFromUnix(timestamp As Long) As Date
Return New Date(UnixEraStartTicks + timestamp * 10000)
End Function
End Module
Questo link è rotto. Potresti aggiornare il link e includere i contenuti nella tua risposta? – Matt
Abbastanza sicuro, 3 anni dopo e il collegamento è interrotto, aggiornamento risposta con codice di esempio – curtisk
Versione Const: (DateTime.UtcNow - # 1/1/1970 #). TotalSeconds - Inoltre, utilizzare un Int64 o si avvolgerà nell'anno 2038. Simile al problema di y2k. – Brain2000