無料でロボットをダウンロードする方法を見る
Facebook上で私たちを見つけてください。
私たちのファンページに参加してください
私たちのファンページに参加してください
記事を気に入りましたか?MetaTrader 5ターミナルの中でそれを試してみてください。
- ビュー:
- 848
- 評価:
- パブリッシュ済み:
- 2016.09.29 12:09
- アップデート済み:
- 2016.11.22 07:34
-
このコードに基づいたロボットまたはインジケーターが必要なら、フリーランスでご注文ください フリーランスに移動
このスクリプトはFileCopy()関数の使用例を実証します。これでは、1つのファイルの内容が他のファイルにコピーされます。コピーが成功するには、ソースファイルは名前が「InpSrc」入力パラメータで指定された端末のローカルフォルダにある必要があります。端末ローカルフォルダはTerminalInfoString()関数の呼び出しによって取得できます。
PrintFormat("The path to the terminal local folder: %s\\Files\\",TerminalInfoString(TERMINAL_DATA_PATH));スクリプトは最初にファイルの内容を表示しようとします。コピー先のファイルが存在しない場合は FileCopy()を FILE_REWRITEフラグを使用せずに使用する必要があります。コピー先のファイルが既に作成されている場合は、コピーが成功するにはFILE_REWRITEフラグのしようが必要です。
コード:
//--- スクリプトの起動時に入力パラメータのウィンドウを表示する #property script_show_inputs //--- 入力パラメータ input string InpSrc="source.txt"; // ソース input string InpDst="destination.txt"; // コピー input int InpEncodingType=FILE_ANSI; // ANSI=32またはUNICODE=64 //+------------------------------------------------------------------+ //| スクリプトプログラム開始関数 | //+------------------------------------------------------------------+ void OnStart() { //--- ソースの内容を表示する(存在が必要) if(!FileDisplay(InpSrc)) return; //--- コピーファイルが既に存在するかどうかを確認(作成されない場合がある) if(!FileDisplay(InpDst)) { //--- コピーファイルが既に存在しないので FILE_REWRITE フラグなしで複製する(正しいやり方) if(FileCopy(InpSrc,0,InpDst,0)) Print("File is copied!"); else Print("File is not copied!"); } else { //--- コピーファイルが既に存在するので FILE_REWRITE フラグなしでのコピーを試みる(不正) if(FileCopy(InpSrc,0,InpDst,0)) Print("File is copied!"); else Print("File is not copied!"); //--- InpDstファイルの内容は変わらない FileDisplay(InpDst); //--- FILE_REWRITE フラグで再コピー(ファイルが既存する場合の正しいやり方) if(FileCopy(InpSrc,0,InpDst,FILE_REWRITE)) Print("File is copied!"); else Print("File is not copied!"); } //--- InpSrc ファイルコピーを受け取る FileDisplay(InpDst); } //+------------------------------------------------------------------+ //| ファイルの内容を読む | //+------------------------------------------------------------------+ bool FileDisplay(const string file_name) { //--- エラー値をリセットする ResetLastError(); //--- ファイルを開く int file_handle=FileOpen(file_name,FILE_READ|FILE_TXT|InpEncodingType); if(file_handle!=INVALID_HANDLE) { //--- ファイルの内容をループで表示する Print("+---------------------+"); PrintFormat("File name = %s",file_name); while(!FileIsEnding(file_handle)) Print(FileReadString(file_handle)); Print("+---------------------+"); //--- ファイルを閉じる FileClose(file_handle); return(true); } //--- ファイルを開くのに失敗 PrintFormat("%s is not opened, error = %d",file_name,GetLastError()); return(false); }
MetaQuotes Ltdによってロシア語から翻訳されました。
元のコード: https://www.mql5.com/ru/code/1611

このスクリプトはFileDelete()関数の使用例を実証します。

このスクリプトはFileFindFirst()、FileFindNext()及びFileFindClose()関数の簡単な使用例です。