CharToStr関数、DoubleToStr関数、TimeToStr関数|各データ型から文字列型への変換
佐川直弘(株式会社トリロジー取締役)
MetaTrader 4(MT4)のMQL4プログラムでは、各種データ型を文字列型に変換することで、データの表示やログの出力が容易になります。この記事では、初心者にもわかりやすく、Char型、Double型、日時型のデータを文字列型に変換する方法を解説します。
各データ型から文字列型への変換とは?
文字列型への変換とは、各種データ型(Char型、Double型、日時型)を人間が読みやすい形式の文字列に変換することです。これにより、プログラム内でのデータの表示やログ出力が簡単になります。
Char型の文字列変換
Char型のデータを文字列に変換するには、`CharToStr()`関数を使用します。この関数は、ASCIIキャラクターコードを対応する文字列に変換します。
- 関数仕様
- string CharToStr(int char_code)
- char_code
- ASCIIキャラクターコード
- サンプルコード
- int char_code = 68; // 'D’のASCIIコード
string char_str = CharToStr(char_code);
Print(“文字列: " + char_str);
Double型の文字列変換
Double型のデータを文字列に変換するには、`DoubleToStr()`関数を使用します。この関数は、指定した小数点以下の桁数でDouble型の数値を文字列に変換します。
- 関数仕様
- string DoubleToStr(double value, int digits)
- value
- 変換する値
- digits
- 文字列にする小数点以下の桁数(0~8)
- サンプルコード
- double value = 1.23456789;
string double_str = DoubleToStr(value, 5);
Print(“文字列: " + double_str);
日時型の文字列変換
日時型のデータを文字列に変換するには、`TimeToStr()`関数を使用します。この関数は、日時型を指定したフォーマットで文字列に変換します。
- 関数仕様
- string TimeToStr(datetime value, int mode=TIME_DATE|TIME_MINUTES)
- value
- 日時データ
- mode
- フォーマット(`TIME_DATE`、`TIME_MINUTES`、`TIME_SECONDS`)
- サンプルコード
- datetime current_time = TimeCurrent();
string time_str = TimeToStr(current_time, TIME_DATE | TIME_SECONDS);
Print(“現在の日時: " + time_str);
上記のサンプルコードを実行すると、以下のような結果が得られます。
- 実行結果
- 文字列: D
文字列: 1.23457
現在の日時: 2024.07.07 12:30:45
まとめ
各種データ型を文字列型に変換することで、データの表示やログの出力が簡単になります。MQL4プログラムでは、`CharToStr()`、`DoubleToStr()`、`TimeToStr()`の各関数を使用して、Char型、Double型、日時型のデータを文字列型に変換することができます。これらの基本的な使い方を理解することで、プログラムのデバッグやデータの表示がより簡単になります。初心者の方も、まずはこれらの関数の使い方を学び、実際のトレードプログラムに応用してみてください。
ディスカッション
コメント一覧
まだ、コメントがありません