2016-09-30 18 views
0

私は、サーバーからこの時間を持っています。このため1475245457452 日付と時間は次のとおりです。2016年9月30日、午後4時24分17秒ミリ秒の日付をDateTimeに変換するにはどうすればよいですか?

私はこの1475245457452が正しい日付と時刻にDelphiで変換することができますどのように?

+0

あなたは 'DateUtils'ユニットをチェックアウトしましたか? –

+0

あなたのバージョンで推測して質問のタグを付け直しました。 XE10はありません。私の推測はベルリンですが、いずれにしても違いはありません。 –

+2

あなたが提供した値が(Unixの時代から)実際にミリ秒であるので、* micro *秒の代わりに* milli *秒を読むようにヘッダーを修正しました。 –

答えて

6

あなたは言っていないが、私はこの量が実際にはミリ秒であると推測できる。だから、System.DateUtilsユニットからUnixToDateTimeを使用してそれらを変換します

{$APPTYPE CONSOLE} 

uses 
    System.SysUtils, 
    System.DateUtils; 

begin 
    Writeln(DateTimeToStr(UnixToDateTime(1475245457452 div 1000))); 
end. 

私はUnixToDateTimeが秒ではなくミリ秒単位の時間を見込んでいるため秒に変換する1000で割っています。 時間のミリ秒の部分を保持したい場合は、残りの分だけ簡単に日付時間の値を増やすことができます。

時間は常にいくつかの単位システムで測定され、いくつかの原点、またはエポックに関連していることが重要です。値を知るだけでは十分ではありませんが、ユニットとエポックの両方を知る必要があります。はい、これらを推測するのは簡単なことが多いですが、時間価値を生み出すソフトウェアの仕様を読んで、価値が何であるかを明確に判断する方がよいでしょう。

+0

ありがとう!これが流行です。 – Pascal

+0

@ Pascalこれが正しい解決方法である場合は、正しい答えとしてマークしてください –

関連する問題