Sie haben nicht gesagt, aber ich kann schätzen, dass diese Menge tatsächlich Millisekunden ist, gemessen von der Unix-Epoche. So wandeln sie UnixToDateTime
von der System.DateUtils
Einheit mit:
{$APPTYPE CONSOLE}
uses
System.SysUtils,
System.DateUtils;
begin
Writeln(DateTimeToStr(UnixToDateTime(1475245457452 div 1000)));
end.
ich von 1000
geteilt haben in Sekunden zu konvertieren, weil UnixToDateTime
die Zeit in Sekunden statt Millisekunden erwartet. Wenn Sie den Millisekunden-Teil der Zeit beibehalten möchten, können Sie den Datums- Zeit-Wert leicht um den Rest der Division erhöhen.
Es ist wichtig zu betonen, dass die Zeit immer in einem Einheitensystem und relativ zu einem Ursprung oder einer Epoche gemessen wird. Es genügt nie, nur einen Wert zu kennen, aber man muss sowohl die Einheiten als auch die Epoche kennen. Ja, es ist oft einfach genug, diese zu erraten, aber es wäre normalerweise besser, die Spezifikation der Software zu lesen, die den Zeitwert erzeugt, um definitiv herauszufinden, was der Wert ist.
Haben Sie das DateUtils-Gerät ausgecheckt? –
Ich habe Ihre Frage neu getagged, um Ihre Version zu schätzen. Es gibt kein XE10. Meine Vermutung ist Berlin, aber es wird keinen Unterschied machen. –
Ich korrigierte die Überschrift, um * Milli * Sekunden statt * Mikro * Sekunden zu lesen, da der von Ihnen angegebene Wert tatsächlich Millisekunden (von Unix-Epoche) ist. –