サイトデザインをリニューアルしました

datetime型変数から年、月、日、時、分、秒を取り出す

MQL4プログラミングTips

MQL4で日時を扱うための変数にdatetime型があります。

例えば、現在の日時(サーバータイム)をdatetime型で取得する場合MQL4では下記のように記述します。

datetime dt = TimeCurrent();

このdatetime変数から年や月、日、時、分、秒等の個別の情報を取り出したい時がよくあります。

そういう時は、あらかじめMQL4に用意されてる関数を使うことで簡単に個別要素を取り出すことができます。

様々な場面で使用する局面があると思うので是非とも覚えておきましょう。

「年」だけを取得する場合

datetime変数から「年」を取得するには「TimeYear」関数を使います。

TimeYear関数に引数として「datetime型変数」を渡すことで、int型で「年」を取得できます。

datetime dt = TimeCurrent();

int year = TimeYear(dt);

これで、現在のサーバータイムにおける「年」が取得できます。

「月」だけを取得する場合

datetime変数から「月」を取得するには「TimeMonth」関数を使います。

TimeMonth関数に引数として「datetime型変数」を渡すことで、int型で「月」を取得できます。

datetime dt = TimeCurrent();

int month = TimeMonth(dt);

これで、現在のサーバータイムにおける「月」を取得できます。

「日」だけを取得する場合

datetime変数から「日」を取得するには「TimeDay」関数を使います。

TimeDay関数に引数として「datetime型変数」を渡すことで、int型で「日」を取得できます。

datetime dt = TimeCurrent();

int day = TimeDay(dt);

これで、現在のサーバータイムにおける「日」を取得できます。

「時」だけを取得

datetime変数から「時」を取得するには「TimeHour」関数を使います。

TimeHour関数に引数として「datetime型変数」を渡すことで、int型で「時」を取得できます。

datetime dt = TimeCurrent();

int hour = TimeHour(dt);

これで、現在のサーバータイムにおける「時」を取得できます。

「分」だけを取得

datetime変数から「分」を取得するには「TimeMinute」関数を使います。

TimeMinute関数に引数として「datetime型変数」を渡すことで、int型で「分」を取得できます。

datetime dt = TimeCurrent();

int minute = TimeMinute(dt);

これで、現在のサーバータイムにおける「分」を取得できます。

「秒」だけを取得

datetime変数から「秒」を取得するには「TimeSeconds」関数を使います。

TimeSeconds関数に引数として「datetime型変数」を渡すことで、int型で「秒」を取得できます。

datetime dt = TimeCurrent();

int seconds = TimeSeconds(dt);

これで、現在のサーバータイムにおける「秒」を取得できます。

コメント