Kann mir jemand eine Idee geben, wie ich das aktuelle Datum in Millisekunden erhalten kann?
objective-c
cocoa-touch
ios
date
time
Siva
quelle
quelle
Antworten:
Es gibt verschiedene Möglichkeiten, dies zu tun, obwohl mein persönlicher Favorit ist:
Weitere Informationen zu dieser Methode finden Sie hier . Sie können auch ein NSDate-Objekt erstellen und Zeit abrufen, indem Sie timeIntervalSince1970 aufrufen, das die Sekunden seit dem 1.1.1970 zurückgibt:
Und in Swift:
quelle
CFAbsoluteTimeGetCurrent()
die Uhrzeit relativ zum Referenzdatum zurückgegeben wirdJan 1 2001 00:00:00 GMT
. Nicht, dass in der Frage ein Referenzdatum angegeben wurde, aber beachten Sie, dass dies kein UNIX-Zeitstempel ist.Das NSTimeInterval direkt auf einen langen Überlauf für mich zu übertragen, also musste ich stattdessen auf einen langen Long umstellen.
Das Ergebnis ist ein 13-stelliger Zeitstempel wie unter Unix.
quelle
timeIntervalSince1970
Methode kehrt zwar bei den Sekunden der gesamten Zahl zurück, enthält jedochdouble
auch die Bruchsekunde, die arithmetisch in Millisekunden umgewandelt werden kann. Daher die Multiplikation mit 1000.long long
? Diese Sprache ist so seltsamquelle
quelle
Sie können dies einfach tun:
Dies gibt einen Wert in Millisekunden zurück. Wenn Sie also den resultierenden Wert mit 1000 multiplizieren (wie von meinen Eimantas vorgeschlagen), wird der lange Typ überlaufen und es wird ein negativer Wert angezeigt.
Wenn ich diesen Code jetzt gerade ausführe, führt dies zu
und
quelle
@JavaZava Ihre Lösung ist gut, aber wenn Sie einen 13-stelligen Wert haben möchten, der mit der Zeitstempelformatierung in Java oder JavaScript (und anderen Sprachen) übereinstimmt, verwenden Sie diese Methode:
oder (wenn Sie eine Zeichenfolge benötigen):
quelle
Wie bereits erwähnt, gibt [[NSDate date] timeIntervalSince1970] ein NSTimeInterval zurück. Dies ist eine Dauer in Sekunden und nicht in Millisekunden.
Sie können https://currentmillis.com/ besuchen, um zu sehen, wie Sie in die gewünschte Sprache gelangen können. Hier ist die Liste -
Für das objektive CI hat CI Folgendes getan, um es auszudrucken -
Hoffentlich hilft das.
quelle
Konvertieren Sie den
NSTimeInterval
milisecondedDate
Wert innsstring
und danach inint
.quelle
Sie können die folgenden Methoden verwenden, um das aktuelle Datum in Millisekunden abzurufen.
ODER
Quelle: iPhone: Wie erhalte ich aktuelle Millisekunden?
quelle
quelle
Verwenden Sie diese Option, um die Zeit in Millisekunden abzurufen
(long)(NSTimeInterval)([[NSDate date] timeIntervalSince1970])
.quelle
Eine Verlängerung am Datum ist wahrscheinlich der beste Weg, dies zu tun.
quelle