無料でロボットをダウンロードする方法を見る
Facebook上で私たちを見つけてください。
私たちのファンページに参加してください
興味深いスクリプト?
それではリンクにそれを投稿してください。-
他の人にそれを評価してもらいます
記事を気に入りましたか?MetaTrader 5ターミナルの中でそれを試してみてください。
スクリプト

Demo_FileCopy - MetaTrader 5のためのスクリプト

ビュー:
753
評価:
(33)
パブリッシュ済み:
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

Demo_FileDelete Demo_FileDelete

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

Demo_FileFind Demo_FileFind

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

The20sv0.20 The20sv0.20

セマフォトレンドシグナル指標

i-IntradayFibonacci i-IntradayFibonacci

日中フィボナッチリレベル