トップ  >  リファレンス  >  ファイル関数  >  FileIsExist
スポンサーリンク
検索
カスタム検索
リファレンスツリー
オススメ
FileIsExist


FileIsExist


ファイルの存在チェックをします



関数書式:
bool  FileIsExist(
   const string  file_name,       // ファイル名
   int           common_flag=0    // 検索フラグ
   );



■引数
引数名 初期値 I/O 詳細
file_name - In チェックするファイルの名前
common_flag - In ファイルの場所フラグ。
FILE_COMMONを指定した場合は、共通ディレクトリ。
それ以外の場合は、ローカルディレクトリになります。


■戻り値
指定したファイルが存在する場合はtrueを返します



■備考
指定したファイル名がサブディレクトリの場合、エラーコード5019が生成されます。
この場合戻り値はfalseを返します。


サンプルソース(スクリプト):
#property strict
#property script_show_inputs

input string InpFilter="*"; // 検索フィルタ

void OnStart(){
  
    string file_name;
    int    i=1;
    long   search_handle;
    int    errorcode;
    
    printf("%sフィルタでローカルディレクトリを検索。",InpFilter);
    search_handle = FileFindFirst(InpFilter,file_name,0); // ローカルディレクトリを検索
    
    if (search_handle != INVALID_HANDLE) {

        do {
            ResetLastError();                  // エラーコードリセット
            FileIsExist(file_name);            // 見つかったファイル名で存在チェック
            errorcode = GetLastError();        // 指定した名前がディレクトリの場合はエラーコード5019を返します

            PrintFormat("%dつ目 : %s名 = %s",i, errorcode==5019 ? "ディレクトリ" : "ファイル" ,file_name);
            i++;

        } while( FileFindNext(search_handle,file_name) == true );
        // 次の検索を行い、見つかったら処理を繰り返す
    
        FileFindClose(search_handle); // ファイルハンドラクローズ
    } else {
        Print("対象ファイル無し");
    }
}


ローカルフォルダの内容



結果:
*フィルタでローカルディレクトリを検索。
1つ目 : ファイル名 = entry_access.bin
2つ目 : ファイル名 = FXCM_ECOFILE.htm
3つ目 : ファイル名 = test_file.txt
4つ目 : ディレクトリ名 = test_folder\


*.txtフィルタでローカルディレクトリを検索。
1つ目 : ファイル名 = test_file.txt





スポンサーリンク



Copyright ©2015 MT4でEA自作しちゃお〜 All Rights Reserved.


Top

inserted by FC2 system