FileIsEnding

読み出し処理において、ファイルの終わりを定義します。

bool  FileIsEnding(
  int  file_handle      // ファイルハンドル
  );

パラメータ

file_handle

[in] FileOpen() から戻されたファイル記述子

戻り値

読み出し処理またはファイルポインタの移動時において、ファイルの終わりに達した場合は true

注意事項

ファイルの終わりを定義するには、関数は次の文字列を読み取ろうとします。文字列が存在しない場合、この関数は true を戻し、それ以外の場合は false を返します。

例:

//--- スクリプトの起動時に入力パラメータのウィンドウを表示する
#property script_show_inputs
//--- 入力パラメータ
input string InpFileName="file.txt";   // ファイル名
input string InpDirectoryName="Data";   // ディレクトリ名
input int   InpEncodingType=FILE_ANSI; // ANSI=32 または UNICODE=64
//+------------------------------------------------------------------+
//| スクリプトプログラムを開始する関数                                          |
//+------------------------------------------------------------------+
void OnStart()
 {
//--- 使用するファイルへのパスを出力する
  PrintFormat("Working %s\\Files\\ folder",TerminalInfoString(TERMINAL_DATA_PATH));
//--- エラー値をリセットする
  ResetLastError();
//--- ファイルを読み込みのために開く(ファイルが存在しない場合、エラーが発生する)
  int file_handle=FileOpen(InpDirectoryName+"//"+InpFileName,FILE_READ|FILE_TXT|InpEncodingType);
  if(file_handle!=INVALID_HANDLE)
    {
    //--- ファイルの内容を出力
    while(!FileIsEnding(file_handle))
        Print(FileReadString(file_handle));
    //--- ファイルを閉じる
    FileClose(file_handle);
    }
  else
    PrintFormat("Error, code = %d",GetLastError());
 }