FileWrite 関数
この関数は、指定した csvファイル または txtファイルへデータを書き込みます。ファイルに書き込み後、行末に改行文字「\r\n」が追加されます。
ファイルの指定は、FileOpen関数によって取得されるファイルハンドルを使って行ないます。
データ型と構成・戻り値
uint FileWrite(①);
戻り値は、書き込みしたファイルのサイズをバイト単位で返します。失敗した場合は 0を返します。
発生するエラーについては、GetLastError関数で取得することができます。
引数 [64]
FileWrite関数は最大 64個の引数で構成されます。
番 号 | 引数名 | データ型 | 単位 | 初期値 | 説明 |
---|---|---|---|---|---|
① | file_handle | int | - | - | FileOpen関数によって取得されるファイルハンドル。 |
②~ | … | - | - | - | ファイルに書き込むデータ。複数ある場合は「, (コンマ)」で区切ります。最大63個までです。 複数の書き込みデータは書き込みの際「; (セミコロン)」で区切られて表示されます。 |
使用例
FileWrite関数によるファイルへの書き込み
FileWrite関数を使って指定したファイルに文字列を書き込みます。
書き込むファイルは FileOpen関数で選択します。もし、ファイルが存在しない場合は新規にファイルが作成されます。
書き込んだファイルの場所については FileOpen関数のページで確認してください。
コード
// FileWrite関数によるファイルへの書き込み
#property strict
void OnInit() {
string filename = "test.csv"; // ファイル名
int handle; // ファイルハンドル
handle = FileOpen(filename, FILE_READ | FILE_WRITE | FILE_CSV );
uint b = FileWrite(handle, "test", "テスト", "フランのなるほどMT4");
FileSeek(handle, 0, SEEK_SET); // ファイルポインタの位置を先頭に移動
Print(filename, "ファイルの書き込みバイト数:", b, "バイト");
FileClose(handle);
}
コードをコンパイルして実行する方法はこちらを参考にしてください。(デモ口座でお試しください)
結果
書き込んだ「test.csv」ファイルの状態
補足
書き込み内容を改行したい場合は文字の前に ”\n” を記載します。
上記のコードの場合、10行目を次のようにします。
uint b = FileWrite(handle, "test", "テスト", "\nフランのなるほどMT4");