Mit Lua zu format 0 Sekunden 00:00:00
Ich versuche zu formatieren, eine Dauer (in Sekunden), als eine Zeit, und ich bin immer Ergebnisse, die angibt, dass ich soll-Konto für eine Epoche irgendwo. Ich erwartete os.date("%X", 0)
zu produzieren "00:00:00" aber es ist wieder "20:00:00" sowie einen date-Wert von "12/31/69" (ich muss nicht ein Kalender-Datum, obwohl).
Ist es ein standard-Weg, um eine Zeitdauer Zeichenfolge, die bewirkt, dass 0 Sekunden produziert eine Uhr mit einem Gewicht von null Sekunden? Ich kann nicht scheinen zu finden ein Beispiel überall, was ich versuche zu tun.
Dank
Du musst angemeldet sein, um einen Kommentar abzugeben.
In den meisten Systemen (ie, POSIX),
os.date("%X",0)
gibt Ihnen die Zeit, der Epoche, die von 00:00:00 (Coordinated Universal Time, UTC), 1. Januar 1970.Sie erhalten
20:00:00
weil Sie in einer anderen Zeitzone.Zwingen UTC, statt Ihre Zeit-zone, starten Sie das format mit
!
. Dies ist bereits in der Handbuch.Also, nutzen Sie
os.date("!%X",0)
zu bekommen00:00:00
wie gewünscht. Es funktioniert mit einer beliebigen Anzahl von Sekunden weniger als einem Tag (86400). Zum Beispielos.date("!%X",70)
gibt00:01:10
: 1 minute und 10 Sekunden.Lua nicht über eine große standard-Bibliothek:
os.date
es tun können. Siehe meine Antwort.%d
erfordert Ganzzahl als Eingabe. Natürlich kann man immer umgehen, die durch das einwickeln inmath.floor
.