UNIX時間を表示するには?

解決


こむりん  2016-01-01 08:33:31  No: 47843

Delphi10で現在のエポック秒(10桁の数字)を表示したいのですが、取得方法が分かりません。
Now()に入っているのでしょうか?

begin
UnixTime := Now;
str := DateTimeToStr(UnixTime);
ShowMessage(str);
end;

上記で日付と時刻は表示出来ますが、UNIXTIME自体を表示する方法が判りません。
どなたか教えていただけ無いでしょうか?

よろしくお願いいたします。


igy  2016-01-01 09:51:34  No: 47844

DateTimeToUnix 関数は、いかがですか?


こむりん  2016-01-01 13:29:11  No: 47845

ありがとうございます。
動きました
とってもうれしいです!

以下のようにしました。

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls,System.DateUtils;

>System.DateUtils を usesに追加

procedure TForm1.Button1Click(Sender: TObject);
var
  UnixTime: String;
begin
      UnixTime := DateTimeToUnix(Now,true).ToString();
      ShowMessage(UnixTime);
end;


こむりん  2016-01-01 13:32:25  No: 47846

DateTimeToUnix 関数で解決できました。
有難うございます。


Mr.XRAY  2016-01-04 20:48:45  No: 47847

DateTimeToUnix 関数が出てきたので.ちょっと補足.

この関数は,Delphi 6 以降で使用可能なのですが,
Delphi XE6 以降では,DateTimeToUnix 関数の第 2 引数で,UTC (協定世界時) として扱うか,
ローカル時 (日本の場合は日本標準時) として扱うかを指定できます.

以下に関係リンクと参考コードを追加掲載してみました.参考になれば.

[日付時刻型の処理と変換等の参考記事]
http://mrxray.on.coocan.jp/Delphi/plDateEdit/Hints_Troubles.htm#92


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加